|
Page Edited :
SM :
POJO support
POJO support has been edited by skud xavier (Jan 03, 2008). Content:ServiceMix provides support for JBI POJOs in addition to the usual JBI Components. JBI Components are maybe not as lightweight as they could be; there's a bunch of methods on there for dealing with metadata, management and capabilities along with a lifecycle object. ServiceMix introduces the idea of a JBI POJO which is any Java object which implements the ComponentLifeCycle Adding an instance of ComponentLifeCycle to the SpringJBIContainer will automatically wrap the POJO in a JBI ComponentAdaptor This means you can write JBI POJOs to be deployed by Spring without deriving from some helper base class like ServiceMix's ComponentSupport Example POJO ComponentsFirst here's how we configure the two components in ServiceMix. Notice that ServiceMix is doing the routing here using destinationService. An error occurred: http://svn.apache.org/repos/asf/servicemix/trunk/common/servicemix-components/src/test/resources/org/apache/servicemix/components/pojo/example.xml. The system administrator has been notified.
Now lets look at the sender POJO. The sendMessages() method will send messages onto the JBI bus to the destination service specified in the above XML. An error occurred: http://svn.apache.org/repos/asf/servicemix/trunk/common/smx3/servicemix-components/src/test/java/org/apache/servicemix/components/pojo/MySender.java. The system administrator has been notified.
Then the receiver processes inbound messages as follows. An error occurred: http://svn.apache.org/repos/asf/servicemix/trunk/common/smx3/servicemix-components/src/test/java/org/apache/servicemix/components/pojo/MyReceiver.java. The system administrator has been notified.
Being even more POJOThe code above may seem a bit too verbose for you. Firstly you can reduce much code by reusing the Component helper classes. Another option is to be even more POJO-like. If you just want to invoke operations on the JBI bus then there's no need for you to implement the JBI component or lifecycle contract - you can just reuse the Client API. For example this POJO sends messages into the JBI bus. An error occurred: http://svn.apache.org/repos/asf/servicemix/trunk/common/smx3/servicemix-components/src/test/java/org/apache/servicemix/components/pojo/PojoSender.java. The system administrator has been notified.
And this is a POJO receiver which just consumes the messages its given, without explicitly implementing the component or lifecycle interfaces An error occurred: http://svn.apache.org/repos/asf/servicemix/trunk/common/smx3/servicemix-components/src/test/java/org/apache/servicemix/components/pojo/PojoReceiver.java. The system administrator has been notified.
|
Unsubscribe or edit your notifications preferences
