Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7773573
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 1, 20262026-06-01T17:09:47+00:00 2026-06-01T17:09:47+00:00

I am an inexperienced Java developer trying to wrap my head around some fundamental

  • 0

I am an inexperienced Java developer trying to wrap my head around some fundamental middleware/SOA concepts and technologies, specifically:

  • Service-Oriented Architecture (SOA)
  • Message-Oriented Middleware (MOM)
  • Message Queue
  • Apache Camel
  • Mule
  • EJBs
  • Endpoints & Routes
  • Service Bus/ESB
  • JMS

After looking each of these up online/on Wikipedia, I was able to get (for the most part) decent definitions for each of these. What I am not understanding is how all of these technologies/concepts work together on the backend to provide a 2nd/business tier solution.

Can someone please give an example of an architecture that would use all of these technologies/concepts, and explain what role each of them play in the overall solution? Once I see a working example I’m sure it will help me connect most of the dots.

Edit: Since I added the bounty, I’ve had several answers that suggest reading books. Although I appreciate all feedback here, I simply can’t part ways with 300 reputation points for an answer that, essentially, boils down to “RTM” (especially when I’m flat broke and can’t afford the manual!) To reiterate, the bounty and definitive answer will go to someone who can hit all of these bullets in a meaningful, practical example. This does not have to be a middleware compendium!!! Just a paragraph or two that shows how all these can be used together in harmony to produce a Java business-tier solution. Thanks again.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-01T17:09:48+00:00Added an answer on June 1, 2026 at 5:09 pm

    SOA main principles: Build systems as set of services where each service is

    • Coarse-grained
    • Interoperable
    • Loosely coupled

    A company offers a lot of business services (coarse-grained) developed over many years and exposed to the users (human or other systems) in some form. There are more chances that each of these features have been designed and developed not keeping the above three principles in mind. Moreover, each of those features might be running on disparate heterogeneous platforms, using different technologies etc.

    What if you want to integrate these disparate features thus creating new solutions (For e.g. Amazon store front is a new service composed of their catalog service, shopping cart service etc)?

    You have two choices:

    1. Building the new feature from scratch keeping the 3 principles in mind. But it is a very costly endeavor, and one that’s almost never successful.
    2. An effective and less risky alternative is to assemble/compose it from existing, proven (well tested) services.

    Option 2 is where ESBs can help with their support for routing, transformation, monitoring etc. Apache Camel, Mule are open-source ESB’s. Endpoints & Routes are the terminology used in EIP (Enterprise Integration Patterns) that these ESB’s implement. ESB’s can take help of MOM’s (Message-Oriented-Middleware) when they want to route/integrate services that are running on heterogeneous platforms (For e.g. the catalog service might be running on a mainframe system but the shopping cart is implemented using stateful EJBs running in a Java Application server). Message queue is a concept in MOM that acts a temporary storage of the message between the sender and receiver. This temporary storage provides lot of benefits like asynchronous delivery, guaranteed delivery etc. There are several different MOM vendors like IBM (WebSphere MQ), open-source ActiveMQ etc. We can use JMS to keep your code independent of the vendor.

    I tried to relate all the concepts with an example. I also tried to keep it short. Please
    ask follow up questions to gain more understanding.

    MOM is not a requirement to implement SOA. For e.g. if all of your services are exposed over SOAP via HTTP then you don’t need a MOM in this case.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am an inexperienced Java Swing developer and I need to create a JDialog
I've been playing around with a very simple JPA example and am trying to
Preface: I am an inexperienced java programmer handed one of his first assignments. If
Me and some friends are writing a MORPG in Java, and we would like
I'm in the process of porting some old C code to Java and, due
I wrote a simple downloader as Java applet. During some tests I discover that
Somewhat inexperienced programmer here trying to write a program to log into my courses
I have just one week experience in GAE/Java and trying to port an legacy
I am relatively inexperienced with java & generics, so please excuse me if this
I am writing a JAVA program for work that at some point needs to

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.