[Design of JBoss ESB] - Isn't ServiceInvoker.deliverSync flawed?
by ewrdk
Looking at the underlying code (Community Edition 4.4.GA) of the ServiceInvoker I can see the following (JMS epr case):
The ingoing message is delivered using TwoWayCourierImpl which in turn uses JMSCourier. The JMSCourier sets the correlationId of the message. So far so good.
But when retrieving the outgoing message this correlationId is never used: The pickup method of JMSCourier does not use a message-selector based on the correlationId (it can only use a generic message-selector attached to the jms-filter definition).
This in turn means that there is no guarantee that the response message is related to the request message. For a single user scenario this may work, except that previous timed-out messages may be returned instead. In a multi-threaded scenario it will never work. This is f.ex. the case with the RequestResponseBaseWebService class in the Enterprise 4.3 edition.
So, have I missed something here?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4193320#4193320
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4193320
16 years, 1 month