On 25 Aug 2005, at 21:55, Sami Dalouche wrote:

Hi,

I am desperately trying to find some general information about how ServiceMix
works...

I read in the JSR 208 spec that Provider and Consumer Binding Components
communicate using WSDL operations and XMLSchema types.

The spec's kinda hard work :). We're hoping to write a few articles soon that gives more of a ' how to get stuff done with JBI' type of overview.

Basically the guts of JBI is the Normalized Message Router which just routes NormalizedMessages around inside MessageExchanges (one ways or request-response). So there's no absolute requirement that every service have a WSDL, though its often kinda handy, especially for tooling.


I also have the feeling that the org.servicemix.components.* (especially JMS)
classes impement some of the possible binding components.

So, let's take, for eaxmple, the JmsInBinding :
"A JMS MessageListener which sends the inbound JMS message into the JBI
container for processing"

Ok, so it sens the JMS Message, but.... where ? under which type ? how is the
JMS message converted ?

The spring deployment file has 2 properties :
destinationService="my:outputSender">
service="my:inputReceiver"

I guess that the service is the service that is provided by the binding, and destinationService is the name of the service where all JMS messages are
routed, right ?

Yes.

Sorry this is not terribly clear right now :)

Quite a few of the transport bindings like HTTP, JMS, email, Jabber, file - don't worry too much about things like SOAP protocols or encoding, but just take what they are given and bind to different transports. So you can send any NormalizedMessage into and out of them. You can then pipeline components into other components to deal with things like XML format, SOAP encoding etc. For example you could use ActiveSOAP as a lightweight SOAP stack and use JBI components for the transport.

Another option is to use an entire SOAP stack as a BC. e.g. we support SAAJ, XFire, ActiveSOAP and WSIF too. WSIF is an interesting example as a BC - you point the WSIF component to a WSDL which then uses WSIF to bind to the real wire protocol which works with POJOs, EJBs, SOAP over HTTP and JMS.

James
-------
http://radio.weblogs.com/0112098/

Reply via email to