java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
at javax.xml.soap.SOAPMessage.setProperty(SOAPMessage.java:424)
at org.jboss.ws.soap.SOAPMessageImpl.
at org.jboss.ws.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:115)
at org.jboss.ws.binding.soap.SOAP11BindingProvider.createMessage(SOAP11BindingProvider.java:59)
at org.jboss.ws.binding.soap.SOAPBindingProvider.bindRequestMessage(SOAPBindingProvider.java:89)
at org.jboss.ws.binding.soap.SOAP11BindingProvider.bindRequestMessage(SOAP11BindingProvider.java:65)
at org.jboss.ws.jaxrpc.CallImpl.invokeInternal(CallImpl.java:645)
at org.jboss.ws.jaxrpc.CallImpl.invoke(CallImpl.java:404)
...
Same problem was reported at JBossWS Jira .click here
After I googling,I found that this problem only arise when we use JDK 6. I tried to switch back to JDK5,and it works. Then I tried various methods, such as trying to deploy on JBoss 5.0 beta yet it still doesn't work. According to some forumers, the reason for this is the SAAJ classes being used in Sun JDK 1.6.0 are not compatible with JBossWS since they use their own SAAJ jar named jboss-saaj.jar. So,we will need to make sure that jboss-saaj is loaded before default one.
The solution to this is modifying JBoss lib folder structure.
1.Move all the jar file from ${JBOSS_HOME}/lib into ${JBOSS_HOME}/lib/endorsed except getopt.jar, jboss-system.jar, jboss-jmx.jar
2.Make sure the jboss-saaj.jar and jboss-jaxrpc.jar is in it.
It works for me after I modified the structure. :)