[SWS-525] SaajSoapMessage can get wrong SAAJ version Created: 09/Jun/09  Updated: 04/May/12  Resolved: 31/Jul/09

Status: Closed
Project: Spring Web Services
Component/s: None
Affects Version/s: 1.5.7
Fix Version/s: 1.5.8

Type: Improvement Priority: Major
Reporter: Kenny MacLeod Assignee: Arjen Poutsma
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 0d
Time Spent: 2h 31m
Original Estimate: Not Specified


The getImplementation() method of SaajSoapMessage uses SaajUtils to determine which version of SAAJ is being used. However, SaajUtils uses messageFactory.newInstance() to do this, which returns the default MessageFactory. This may not be the same MessageFactory that was used to create the SOAPMessage which was used to construct the SaajSoapMessage.

In some cases (which is how i discovered this problem), the call to MessageFactory.newInstance() as invoked by SaajUtils fails completely. In my case it's because I'm using a JBoss environment with their WebServices stack removed, but it still looks for the JBoss SAAJ implementation and fails.

I think SaajUtils isSaaj13() and isSaaj12() need to be rewritten to be given the MessageFactory on which to operate, rather than using the environment default.

Comment by Arjen Poutsma [ 31/Jul/09 ]

Done. Can you try a recent snapshot and see if it works?

Comment by Arjen Poutsma [ 04/May/12 ]

Closing old issues

Generated at Mon Mar 25 01:27:31 UTC 2019 using JIRA 7.9.2#79002-sha1:3bb15b68ecd99a30eb364c4c1a393359bcad6278.