Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

At the API level JBI and Mule differ quite a bit; though conceptually they are trying to do similar things. JBI is based on the idea of both component and container based routing - a JBI component can perform smart routing to endpoints. A JBI component can just communicate with its default service, letting the container do the routing for it. Or a JBI component can give the JBI container a hint of which endpoint to use (such as providing a service QName to use or specifying an operation QName) and then the JBI container can, if there are many available services to choose from, use some kind of policy negotiation or load balancing algorithm to choose which physical endpoint to choose. i.e. JBI is a cleaner abstraction for working with both logical and physical web service endpoints, WSDL and the standard WSDL defined message exchange patterns (MEPs).

Finally, ServiceMix is also fully integrated into Apache Geronimo to integrate JBI functionlity into Apache's J2EE container. This allows Apache Geronimo to hot-deploy any JBI component or service using its standard deployment tooling (JSR 77/88 compliant).

Having said all that though; ServiceMix has full support for Mule; so if you already have an investment in some Mule configuration or code, you can reuse it inside ServiceMix along with any other JBI components.