[ 
https://issues.apache.org/activemq/browse/CAMEL-2249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=56839#action_56839
 ] 

Christian Schneider commented on CAMEL-2249:
--------------------------------------------

Did you have the chance to look into the code block I removed from the 
JmsProducer

// FIXME remove: I think this does not make sense
+//                if (correlationId != null) {
+//                    message.setJMSCorrelationID(correlationId);
+//                    exchange.getOut().setHeader("JMSCorrelationID", 
correlationId);
+//                }

It looked wrong to me to set the incoming correlation id to something different 
but perhaps it has some reason I did not understand.

> Wrong handling of useMessageIDAsCorrelationID
> ---------------------------------------------
>
>                 Key: CAMEL-2249
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-2249
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-jms
>    Affects Versions: 2.0.0
>            Reporter: Christian Schneider
>            Assignee: Claus Ibsen
>             Fix For: 2.2.0
>
>         Attachments: camel-jms-2010-01-08.patch, camel-jms-correlation.patch
>
>
> Camel jms seems to contain two bugs in correlation id handling.
> The first shows when you have a sender that has 
> UseMessageIDAsCorrelationID="false" and a server that has 
> UseMessageIDAsCorrelationID="true". If you send a message with 
> correlationId="a" then the response message will contain 
> correlationId="<request message id>". Even if this could be a valid behaviour 
> as you wanted UseMessageIDAsCorrelationID="true" I don“t think it makes sense 
> as the sender will not be able to correlate the message. So for this case I 
> propose to only set the correlation id to the request message id on the 
> server if the correlation id of the request was not set.
> The second bug seems to hide the first bug. Perhaps someone found a quick 
> (and wrong way to make the tests work). It shows when you set 
> UseMessageIDAsCorrelationID="true" on both client and server. If you send a 
> message with correlation id = "a" the client sends it out with this 
> correlation id. The server then sets the correlation id to the request 
> message id (first bug). Then on the client the reply is received. After that 
> the correlation id is set back to "a" on the client. So the tests think all 
> is well. This part of the code should be removed.
> I have marked both problems in the code with FIXME markers in my patch. I can 
> also provide a patch with the solution but first I wanted to only show the 
> problem and provide a failing test. 
> Hope my explanations were not to confused ;-)

-- 
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