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

        

Reply via email to