JMS TransportServiceInterceptor using wrong values to set JMS headers in
producer
---------------------------------------------------------------------------------
Key: TUSCANY-4018
URL: https://issues.apache.org/jira/browse/TUSCANY-4018
Project: Tuscany
Issue Type: Bug
Components: Java SCA JMS Binding Extension
Affects Versions: Java-SCA-2.x
Reporter: Jennifer A Thompson
Fix For: Java-SCA-2.x
In TransportServiceInterceptor.invokeResponse is setting the effective
TimeToLive, Priority in the response message, but when the values are set in
the producer, the values from the request are used, potentially leading to an
incorrect value. So the following:
// Set jms header attributes in producer, not message.
int deliveryMode = requestJMSMsg.getJMSDeliveryMode();
producer.setDeliveryMode(deliveryMode);
int deliveryPriority = requestJMSMsg.getJMSPriority();
producer.setPriority(deliveryPriority);
long timeToLive = requestJMSMsg.getJMSExpiration();
producer.setTimeToLive(timeToLive);
Should be:
// Set jms header attributes in producer, not message.
producer.setDeliveryMode(responseJMSMsg.getJMSDeliveryMode());
producer.setPriority(responseJMSMsg.getJMSPriority());
producer.setTimeToLive(responseJMSMsg.getJMSExpiration());
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira