Tuesday, May 3, 2011

JBoss 5.1 Web Services bug under JDK 1.6

Problem:

When using Jboss 5.1 I get the stack trace below when trying to submit a WS SOAP request:

   1. 09:58:31,822 ERROR [SOAPFaultHelperJAXWS] SOAP request exception 
   2. java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage 
   3.     at javax.xml.soap.SOAPMessage.setProperty(Unknown Source) 
   4.     at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:82) 
   5.     at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:215) 
   6.     at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:193) 
   7.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:455) 
   8.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:295) 
   9.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:205) 
  10.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:131) 
  11.     at org.jboss.wsf.common.servlet.AbstractEndpointServlet.service(AbstractEndpointServlet.java:85) 
  12.     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
  13.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
  14.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
  15.     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 
  16.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
  17.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
  18.     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) 
  19.     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
  20.     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) 
  21.     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) 
  22.     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) 
  23.     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) 
  24.     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
  25.     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
  26.     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) 
  27.     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
  28.     at com.northgatearinso.common.SessionCookieValve.invoke(SessionCookieValve.java:81) 
  29.     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) 
  30.     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) 
  31.     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601) 
  32.     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 
  33.     at java.lang.Thread.run(Unknown Source) 
  34. 09:58:31,822 ERROR [RequestHandlerImpl] Error processing web service request 
  35. org.jboss.ws.WSException: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage 
  36.     at org.jboss.ws.WSException.rethrow(WSException.java:68) 
  37.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:336) 
  38.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:205) 
  39.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:131) 
  40.     at org.jboss.wsf.common.servlet.AbstractEndpointServlet.service(AbstractEndpointServlet.java:85) 
  41.     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
  42.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
  43.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
  44.     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 
  45.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
  46.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
  47.     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) 
  48.     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
  49.     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) 
  50.     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) 
  51.     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) 
  52.     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) 
  53.     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
  54.     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
  55.     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) 
  56.     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
  57.     at com.northgatearinso.common.SessionCookieValve.invoke(SessionCookieValve.java:81) 
  58.     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) 
  59.     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) 
  60.     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601) 
  61.     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 
  62.     at java.lang.Thread.run(Unknown Source) 
  63. Caused by: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage 
  64.     at javax.xml.soap.SOAPMessage.setProperty(Unknown Source) 
  65.     at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:82) 
  66.     at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:169) 
  67.     at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.createSOAPMessage(SOAPFaultHelperJAXWS.java:295) 
  68.     at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.toSOAPMessage(SOAPFaultHelperJAXWS.java:256) 
  69.     at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.exceptionToFaultMessage(SOAPFaultHelperJAXWS.java:187) 
  70.     at org.jboss.ws.core.jaxws.binding.SOAP11BindingJAXWS.createFaultMessageFromException(SOAP11BindingJAXWS.java:102) 
  71.     at org.jboss.ws.core.CommonSOAPBinding.bindFaultMessage(CommonSOAPBinding.java:671) 
  72.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:496) 
  73.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:295) 
  74.     ... 25 more 
  75. 09:58:31,822 ERROR [[DocumentGenerator]] Servlet.service() for servlet DocumentGenerator threw exception 
  76. java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage 
  77.     at javax.xml.soap.SOAPMessage.setProperty(Unknown Source) 
  78.     at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:82) 
  79.     at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:169) 
  80.     at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.createSOAPMessage(SOAPFaultHelperJAXWS.java:295) 
  81.     at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.toSOAPMessage(SOAPFaultHelperJAXWS.java:256) 
  82.     at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.exceptionToFaultMessage(SOAPFaultHelperJAXWS.java:187) 
  83.     at org.jboss.ws.core.jaxws.binding.SOAP11BindingJAXWS.createFaultMessageFromException(SOAP11BindingJAXWS.java:102) 
  84.     at org.jboss.ws.core.CommonSOAPBinding.bindFaultMessage(CommonSOAPBinding.java:671) 
  85.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:496) 
  86.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:295) 
  87.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:205) 
  88.     at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:131) 
  89.     at org.jboss.wsf.common.servlet.AbstractEndpointServlet.service(AbstractEndpointServlet.java:85) 
  90.     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
  91.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
  92.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
  93.     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 
  94.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
  95.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
  96.     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) 
  97.     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
  98.     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) 
  99.     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) 
 100.     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) 
 101.     at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) 
 102.     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
 103.     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
 104.     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) 
 105.     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
 106.     at com.northgatearinso.common.SessionCookieValve.invoke(SessionCookieValve.java:81) 
 107.     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) 
 108.     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) 
 109.     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601) 
 110.     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 
 111.     at java.lang.Thread.run(Unknown Source) 


Solution:

- copy
client/jbossws-native-jaxrpc.jar
client/jbossws-native-jaxws-ext.jar
client/jbossws-native-jaxws.jar
client/jbossws-native-saaj.jar
to libs/endorsed

P.S. I found this list of jar-s to copy in internet, but it is incorrect with my JBoss installation:
jboss-jaxrpc.jar
jboss-jaxws-ext.jar
jboss-jaxws.jar
jboss-saaj.jar

No comments:

Post a Comment