The "transport" term here is a concept from cxf, it means the protocol which is used to transfer the onwire message.
It could be http, jms, or even nmr as you already know.
Thank you very much for your quick response.
While I have an understanding of what a transport is, I don't understand what, for example, 'OSGI transport' means. I understand statements like 'SOAP using HTTP as transport', 'SOAP over FTP' or 'SOAP using JMS' and the transport connotation of HTTP/FTP/JMS in those phrases. It implies that HTTP, FTP and JMS can be used as a data communication protocol, i.e., they have 'data transportation' semantics, albeit their very own semantics.
As far as I understand, OSGi/the NMR are not a technologies/components with such semantics. How is OSGi used as a transport if such technology deals with the deployment and management of modules within a container? When should I use the OSGi transport instead of the NMR one...?
I am sorry if this looks like a stubborn, silly question. I am having a problem building mental models of some of the ServiceMix concepts and this one has been haunting me for some time now.
Thank you again,
Edited by: ytsejammer on Jul 20, 2011 3:51 PM Added rhetorical questions in hope of clarifying what my doubts are
You should treat the OSGi transport as a short term of HTTP OSGi Servlet transport.
When you deploy the CXF into OSGi container, you may want to leverage the OSGi Web Container feature to provide HTTP services. So CXF has this module of OSGi transport.
Since CXF 2.4.x, we did some refactoring on the OSGi transport and Servlet transport, they are sharing the same code base, and are moved into cxf-http-transport module.
Now you can think the OSGi transport as part of http transport
For the NMR transport, it could be interesting. As you know according to JBI spec , all the endpoint will talk to the same message layer NMR (normalize message router). When we want CXF to talk to the NMR, we need to has this kind of transport to send and receive the message. It's typical use case of transport, so we name this transport as a NMR transport.
More specifically, cxf http-osgi transport is based on pax-web, which use OSGi http service underlying. You can consider it as a kind of http transport, but more suitable for cxf endpoint deployed into OSGi container.
NMR transport is used when you want cxf endpoint communicate with other NMR endpoint in the OSGi container.
Thank you for the detailed response. I knew there had to be some sort of 'folklore' knowledge involved ('short term for HTTP OSGi Servlet transport').
The flexibility of these tools is incredible and, at the same time for newbies like I am, a little bit overwhelming.
Thank you again,