[
https://issues.apache.org/jira/browse/SYNAPSE-560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12913944#action_12913944
]
Rajika Kumarasiri commented on SYNAPSE-560:
-------------------------------------------
Now that we have moved the JMS transport into it's own place we'll track the
issue there.
https://issues.apache.org/jira/browse/TRANSPORTS-23
Rajika
> JmsCorrelationId set incorrectly for response message
> -----------------------------------------------------
>
> Key: SYNAPSE-560
> URL: https://issues.apache.org/jira/browse/SYNAPSE-560
> Project: Synapse
> Issue Type: Bug
> Components: Transports
> Affects Versions: 1.2
> Environment: Windows XP, ActiveMq 5.2
> Reporter: Szymon Dembek
> Assignee: Rajika Kumarasiri
>
> I'm trying to run the sample no. 250 from Synapse samples repository (a JMS
> proxy to HTTP endpoint), but with response message (I've removed the line
> which set the OUT_ONLY property on the IN message). I've been using the
> StockQuoteClient class (again from synapse samples) as a client, invoked with
> a 'quote' mode and addUrl set to the jms endpoint:
> "jms:/StockQuoteProxy?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&java.naming.provider.url=tcp://localhost:61616&java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory"
> The problem is with the response message - it has wrong jms correlation id
> set, and since the axis2 jms receiver waits for a response with a specific
> correlation id (the same as the message id of the request message), it fails
> after 30 seconds of timeout.
> I've checked in the source the correlation id behaviour of JMSSender:
> String correlationId = getProperty(msgContext,
> JMSConstants.JMS_COORELATION_ID);
> if (correlationId == null && msgContext.getRelatesTo() != null) {
> correlationId = msgContext.getRelatesTo().getValue();
> }
> Basically the correlation id is not set up in msgContext - it is set up in
> the IN context however, you can retrieve it the following way:
> ((OperationContext)msgContext.getParent()).getMessageContext(WSDL2Constants.MESSAGE_LABEL_IN).
> Either the proper JMS correlation id should be set on the response message,
> or the JMSSender should use another ID as message selector when it listens
> for response.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]