[SWS-473] JmsSenderConnection does not commit transaction after send, leading to messages never being sent if sessionTransacted is true Created: 07/Jan/09 Updated: 04/May/12 Resolved: 12/Jan/09
|Project:||Spring Web Services|
|Affects Version/s:||1.5.3, 1.5.4, 1.5.5|
|Reporter:||Jon Denly||Assignee:||Arjen Poutsma|
|Remaining Estimate:||Not Specified|
|Time Spent:||Not Specified|
|Original Estimate:||Not Specified|
When sending a JMS message using a org.springframework.ws.transport.jms.JmsMessageSender with sessionTransacted set to true, the org.springframework.ws.transport.jms.JmsSenderConnection.onSendAfterWrite method doesn't commit the transaction. This leads to the transaction being rolled back when the connection is closed so the message is never sent. JMSUtils.commitIfNecessary should be called before closing the message producer.
An example of how this is done in JmsTemplate:
Similarly, the following should be done in JmsSenderConnection:
|Comment by Arjen Poutsma [ 07/Jan/09 ]|
Thanks for spotting this, it will be fixed in 1.5.6
|Comment by Arjen Poutsma [ 12/Jan/09 ]|
Fixed. Thanks for spotting this!
|Comment by Arjen Poutsma [ 04/May/12 ]|
Closing old issues