ExceptionHandling & JMSReplyTo in @MessageDriven
------------------------------------------------

                 Key: CAMEL-533
                 URL: https://issues.apache.org/activemq/browse/CAMEL-533
             Project: Apache Camel
          Issue Type: Bug
          Components: camel-core
    Affects Versions: 1.3.0
            Reporter: Aaron Mulder


I have an ActiveMQ Queue and a Spring Bean.  The bean is set to throw an 
IllegalStateException on 1/3 of all invocations.  The message publisher sets 
the JMSReplyTo destination, and there's a listener on the reply queue.

If I configure a route in XML <from uri="activemq:queue:Test"/><to 
uri="bean:MyBean:doSomething" /> then when the exception is thrown, the bean is 
invoked a second time.  (I can tell as the JMS Message ID is annotated into an 
argument to the doSomething method).  The reply queue gets exactly one response 
for every request, regardless of the number of exceptions thrown (I can tell as 
the JMSCorrelationID on the response is set to the incoming JMSMessageID using 
an @OutHeaders annotated argument).

If I drop the XML route and instead use 
@MessageDriven(uri="activemq:queue:Test") then when the exception comes up, the 
message silently disappears.  There is no error emitted by Camel, and the reply 
queue just never gets a message for those requests where the bean threw an 
exception.

This is unexpected -- I would have thought the configured routing and 
@MessageDriven routing had exactly the same behavior when the route was the 
same.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to