9 Replies Latest reply on Aug 29, 2006 6:06 PM by frjma

    javax.xml.rpc.JAXRPCException: Cannot find child element: St

    Ravishankar Srinivasan Newbie

      I am trying to consume a web service deployed on Jboss 4.0.4CR2 + jbossws-1.0 GA running the samples package.The unit tests all ran correctly without any problems. However, when i try to connect from a Python program i see the following error:

      19:55:38,116 ERROR [SOAPFaultExceptionHelper] SOAP request exception
      javax.xml.rpc.JAXRPCException: Cannot find child element: String_1
      at org.jboss.ws.binding.soap.SOAPBindingProvider.getParameterFromMessage
      (SOAPBindingProvider.java:809)
      at org.jboss.ws.binding.soap.SOAPBindingProvider.unbindRequestMessage(SO
      APBindingProvider.java:266)
      at org.jboss.ws.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvo
      ker.java:115)
      at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.jav
      a:234)
      at org.jboss.ws.server.ServiceEndpointServlet.doPost(ServiceEndpointServ
      let.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(Appl
      icationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF

      here is the SOAP IN and OUT dump

      >>> server.validate('admin','admin')
      *** Outgoing SOAP ******************************************************
      <?xml version="1.0" encoding="UTF-8"?>
      <SOAP-ENV:Envelope
      SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
      xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
      xmlns:xsd="http://www.w3.org/1999/XMLSchema"
      >
      <SOAP-ENV:Body>
      <ns1:validate xmlns:ns1="http://com.hp.quickloans/services/authorization" SOAP-E
      NC:root="1">
      <v1 href="#i1"/>
      <v2 href="#i1"/>
      </ns1:validate>
      <v1 xsi:type="xsd:string" id="i1" SOAP-ENC:root="0">admin</v1>
      </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>
      ************************************************************************
      *** Incoming SOAP ******************************************************
      <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'><env:Header/
      ><env:Body><env:Fault>env:Clientjavax.xml.rp
      c.JAXRPCException: Cannot find child element: String_1</env:Fault>
      </env:Body></env:Envelope>
      ************************************************************************
      Traceback (most recent call last):
      File "", line 1, in ?
      File "C:\Python24\Lib\site-packages\SOAPpy\Client.py", line 470, in __call__
      return self.__r_call(*args, **kw)
      File "C:\Python24\Lib\site-packages\SOAPpy\Client.py", line 492, in __r_call
      self.__hd, self.__ma)
      File "C:\Python24\Lib\site-packages\SOAPpy\Client.py", line 406, in __call
      raise p
      SOAPpy.Types.faultType: <Fault env:Client: javax.xml.rpc.JAXRPCException: Cannot
      find child element: String_1>
      >>>

      My WSDL looks like this :
      <?xml version="1.0" encoding="UTF-8"?>
      <definitions name="AuthorizationService" targetNamespace="http://com.hp.quickloans/services/authorization" xmlns:tns="http://com.hp.quickloans/services/authorization" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/">
















      <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal" namespace="http://com.hp.quickloans/services/authorization"/>


      <soap:body use="literal" namespace="http://com.hp.quickloans/services/authorization"/>





      <soap:address location="http://rsrinivasa2:8080/authorization-service"/>




      My Env is Windows XP SP2, Sun JDK 1.5.0_06


      A similar program deployed on Jboss 4.0.3SP1 using the ws4ee stack works fine from both JAVA as well as Python clients

      Any ideas??

      TIA
      Ravi