I have a architectural question around the usage of a ESB and ServiceMix
Currently, I have an application designed in a set of JEE modules. I
- core containing EJBs and packaged in one EAR
- backoffice containing EJBs (using the core one) and WAR in another EAR
- frontend containing EJBs (using the backoffice and core one) and WAR in
I have request to provide more oriented business service without using
backoffice or frontend. The purpose is to publish some business services
to external application.
I would like to refactore my application like this :
- core technical containing EJBs (coret.ear)
- core business containing EJBs (coreb.ear)
- backoffice business containing only EJBs (back.ear)
- backoffice web containing only webapp (back-web.ear)
- frontend containing only webapp (front-web.ear)
The backoffice business needs to use the core technical and core
business services. The two web frontend needs to use the backoffice
business. Core business and backoffice business can be used by external
I would like to provide theses services using ServiceMix. My questions
- is it possible to use ServiceMix as communication channel between EJB
via RMI-IIOP (I have seen jbi4ejb which allow to do it) ?
- is it as performant as direct RMI-IIOP call inside an application
- is it the correct usage of an ESB and ServiceMix especially ?