0 Replies Latest reply on May 13, 2008 11:30 AM by John Chesher

    Web Service issue in AS 4.2.1

    John Chesher Newbie

      I am running 4.2.1 and have web services deployed that I can access fine myself. However, when a partnering company developed a client to talk to them, we ran into a problem. Their PHP 5.2.5 Soap Client generates a very slightly different request syntax that is accepted by JBoss and control is passed to the endpoint method, however the arguments passed to the method have been nulled out at that point. Has anyone seen anything like this and have ideas on how to get around it? BTW, I am currently installing 4.2.2, to see if that resolves the issue, as we are kinda wondering if this isn't possible a bug in 4.2.1 that it doesn't understand how to parse this very similat syntax (see below).

      Here is therequest that fails:

      <?xml version="1.0" encoding="UTF-8"?>
       <SOAP-ENV:Envelope
       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
       SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
       <SOAP-ENV:Body>
       <getStateList xmlns="http://some.webservice.com/">
       <arg0 xsi:type="xsd:string">argument</arg0>
       </getStateList>
       </SOAP-ENV:Body>
       </SOAP-ENV:Envelope>



      And the one that works fine:
      <?xml version="1.0" encoding="UTF-8"?>
       <SOAP-ENV:Envelope
       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
       SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
       xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
       xmlns:web="http://some.webservice.com/">
       <SOAP-ENV:Body>
       <web:getStateList>
       <arg0 xsi:type="xsd:string">argument</arg0>
       </web:getStateList>
       </SOAP-ENV:Body>
       </SOAP-ENV:Envelope>


      Note that the only difference is the location of the xmlns attribute, which in the "bad" request is on the element defining the method name and in the "good" request is one the Envelope element.

      Appreciate any help you can provide.
      Thanks!