Hi Juan José, Here is my modest opinion. This depends of the time and needs you have :
1. If you think you will need some EIP features like those in Camel, or you will still have complex integrations that JBI can make easier (such as routing from a WS to a FTP, or things like that) and that can be done easily with the JBI components (that is, with few code !), then stick to JBI
2. If you need some of the features of OSGi, such as service lifecycle, then convert your old components
3. Decide what bus is the most appropriate ! As I view it, SMX4 has 2 busses : the NMR, which is JBI-compliant, and OSGi. Each one has its advantages and drawbacks. For JBI, it is the *standardization* of the message format, and the fact that the message is really instanciated and transmitted. But it requires much plumbing. For OSGi, it is the speed of development when you are in pure-java, and the services lifecycle. But as it is not a true bus, you must stick to Java/JavaRMI (for dOSGi), and you have not "true" message exchanges between components, you just have RPC.
I am personally mixing the 2: I use OSGi for the internal plumbing of my solution, and JBI for integration with other systems in the enterprise or with external systems, as it provides a nice loose coupling (the interface is in the message, not in the RPC façade).
regards, Vincent Juan José Vázquez Delgado a écrit :
Hi, Currently I have two enterprise solutions made up of several JBI service assemblies and deployed on a ServiceMix 3.3 instance. These SAs contain a few SUs deployed on different kind of JBI components such as smx-cxf-bc, smx-cxf-se, smx-jms, camel, smx-bean, amongst others. Now, I´m planning to move to ServiceMix 4. My idea is refactoring some components taking advantage of the new OSGi architecture but my doubt is if I should keep myself close to JBI specification or not. In other words, is the JBI stuff supported in SMX4 for legacy reasons or is intented to be the main way to develop for SMX4?. In the other hand, I´d like taking advantage of the new clustering stuff provided in SMX4 too. Any advices or best practices?. Thanks in advance. Regards, Juanjo.
