|
I have been working to try and understand the connections
architecture in the jbi.xml and how it is best implemented? As I
understand it the SUM is responsible for creating the ServiceEndPoints for a SA,
it will basically activate each of these, in the jbi.xml you can reference
provides and consumes, however the container just ignores these and they are
really just there for third-party tools that might want to show what is
available. The only bit the container seems to be interested in is the connections/connection,
as I understand it if I have a service starting an InOnly exchange (in the
example this is the quartz:QuartzProvider) and another service wishing to receive
that message (the logger:LoggerConsumer) then I can join them up using the
jbi.xml as shown below: <connections> <connection> <consumer
service-name="quartz:QuartzProvider" endpoint-name="Notification"
/> <provider
service-name="logger:LoggerConsumer" endpoint-name="Consumer"
/> </connection> </connections> So under this model I can write JBI services that do not
need to know where they publish to since that can be mapped in the
jbi.xml. However, there are a few bits I don’t understand. The connection was originally made through an
interface-name, however in my SUM I can’t see how I can activate an
ServiceEndPoint to an interface-name, in fact I can’t see how
interface names work in the context of a ServiceEndPoint, I though that
they were a way of specifying a endpoint without a service name or endpoint
name. Much is made in the specification about WSDL and interfaces and I
would like to understand how that is tied to the endpoints, I assumed
that I could expose multiple interfaces to a service through different endpoints? Next up it while when I create an exchange I can specify the
name of the endpoint on which I wish to create the message I don’t see
how this is achieved on a delivery channel, should I implement a delivery channel
helper that is able to receive messages and then send them to a specific
endpoint, and if so how I do determine the end point to which a message is
destined? This goes back to my first question which is really around
exposing different interfaces to a service and being able to deliver the
messages to those interfaces so that I am able to denote different endpoints? So many questions! J Cheers P |
- [servicemix-dev] ServiceEndPoints and Connections Philip Dodds
- Re: [servicemix-dev] ServiceEndPoints and Connections Alexandre Alves
- RE: [servicemix-dev] ServiceEndPoints and Connections Philip Dodds
