3 Replies Latest reply on Jun 14, 2006 2:30 PM by phlogistic

    nodatabinding & jbossws-1.0.1GA on jboss 4.0.4.GA

      When I use the "nodatabinding" feature of Sun's JWSDP 1.6 wscompile tool, then deploy and run on jbossws-1.0.1GA & jboss 4.0.4.GA, I receive the exception:

      13:59:30,152 ERROR [SOAPFaultExceptionHelper] SOAP request exception
      org.jboss.ws.WSException: javaType cannot be null
       at org.jboss.ws.soap.SOAPContentElement.assertContentMapping(SOAPContentElement.java:462)
       at org.jboss.ws.soap.SOAPContentElement.getObjectValue(SOAPContentElement.java:229)
       at org.jboss.ws.binding.EndpointInvocation.transformPayloadValue(EndpointInvocation.java:233)
       at org.jboss.ws.binding.EndpointInvocation.getRequestParamValue(EndpointInvocation.java:103)
       at org.jboss.ws.binding.EndpointInvocation.getRequestPayload(EndpointInvocation.java:117)
       at org.jboss.ws.server.ServiceEndpointInvokerJSE.invokeServiceEndpoint(ServiceEndpointInvokerJSE.java:94)
       at org.jboss.ws.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:118)
       at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:234)
       at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:120)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
       at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
       at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
       at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
       at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
       at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
       at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
       at java.lang.Thread.run(Thread.java:595)
      


      I'm not sure if this is related, but I had to manually create <java-xml-type-mapping> elements in the jaxrpc mapping file:

       <java-xml-type-mapping>
       <java-type>
       javax.xml.soap.SOAPElement
       </java-type>
       <root-type-qname xmlns:typeNS="http://www.anywhere.com/stuff">
       typeNS:DetailRequestType
       </root-type-qname>
       <qname-scope>complexType</qname-scope>
       </java-xml-type-mapping>
      


      Any ideas on what could be causing the exception? I've searched high and low throughout the JBossWS documentation for nodatabinding examples & documentation, and have not found a documented solution.

        • 1. Re: nodatabinding & jbossws-1.0.1GA on jboss 4.0.4.GA
          heiko.braun
          • 2. Re: nodatabinding & jbossws-1.0.1GA on jboss 4.0.4.GA

            Correct.

            My objective is to manually handle the XML processing of the web service. I would like to use the WSDL to generate the Java source.

            Using wscompile to generate artifacts with the nodatabinding feature, I receive the above exception upon a client attempting to consume the web service.

            I also tried implementation via wstools. I suspect wstools does not support generation of artifacts from WSDL -> Java for message style endpoints. I do not see an element or attribute in the wstools ant task to support mesage style endpoints; nor is there an element or attribute for the wsdl-java element in the wstools configuration file to flag processing for message style endpoints. When I generate using WSDL-> Java, wstools creates POJO representations of the schema, as well as the generated service didn't deal with SOAPElement arguments or method returns.

            Any advice?

            For wscompile, I suspect I am missing something in the jaxrpc mapping file, and / or missing something in the ws4ee-deployment.xml, and that is what is causing the stack trace from the JBossWS (org.jboss.ws.soap.SOAPContentElement) source code.

            I am unsure what I am neglecting for the wstools utility.

            • 3. Re: nodatabinding & jbossws-1.0.1GA on jboss 4.0.4.GA

              OK, got the reason why for the exception. My included WSDL's namespace was the same as my schema's namespace.

              After creating a separate namespace for the schema and the WSDL, and importing the schema (instead of including it in the of the WSDL), the exception disappeared - replaced by a different exception, but that's better discussed in a different topic.