Hi Nodet,
I am aware of the multiple endpoint could be a potential problem and as
the comment after channl.accept() I will revisit the code and provider
multiple endpoint support later on. The basic idea is I should put
destination and endpoint name into a map, according the endpoint name
which we can get from the exchange channel we can look up the proper
destination and do the dispatch properly.
As to input stream we get from JBI destination, it should be xml
binding(no soap tag in it), so xml relative interceptors could be invoked.
So far as I know, the interceptors is configured according to wsdl file,
such as using xml inteceptor or soap interceptor, using wrapped
inteceptor or bare inteceptor, etc. May be in the future we should
provide more flexible way to config the interceptors.
Thanks very much
Freeman
Guillaume Nodet wrote:
I had a brief look at the JBI service engine and I have one question.
The JBIDestination, when started creates a thread to poll JBI exchanges
from the DeliveryChannel and dispatch them. But I think that one
destination
is created for each service deployed, right ? In this case, the
threads will
compete for jbi exchanges (which is not a problem), but they are not
assured
to receive exchanges for the right service. If multiple services are
deployed,
they will be given the first available exchange, so there are lots of
chances
that the processing will fail.
I'm (unfortunately) not very at ease with CXF code, so I may have missed
something. Thoughts ?
Also, I someone could cast some light on what kind of processing is
performed
on the input stream, that would be cool. Where are the interceptors
configured ?
--
Freeman Fang
Software Engineer
IONA Asia Pacific Software Development Center
No.2 Floor A Unit Information Center
Zhongguancun Software Park Haidian District,
Beijing, P.R.China
Tel.: +86-10-82825151 - ex. 551
Fax: +86-10-8282-5210
[EMAIL PROTECTED]
-------------------------------------------------
Making Software Work Together TM