Loading ...
Sorry, an error occurred while loading the content.

SOAPLite and XML Parameters

Expand Messages
  • Craig Wilkins
    I have a few questions about the interoperability of SOAPLite client and Apache SOAP server. I have only been coding in Perl for 3 days now and don t really
    Message 1 of 1 , Sep 26, 2001
    • 0 Attachment
      I have a few questions about the interoperability of SOAPLite client and
      Apache SOAP server. I have only been coding in Perl for 3 days now and
      don't really get the syntax, but I still think that I have found some
      inconsistencies. In these 3 days, I have also been able to get some
      SOAPLite clients to work, so I think that I am doing some of it right.

      My SOAP Server accepts literal XML.
      I need to pass the request with an encoding style of
      'http://xml.apache.org/xml-soap/literalxml'. I found (with the help of some
      other people) that I can do this by using the encodingStyle call for
      SOAP::Data.

      This works well if with the following type call.

      SOAP::Data -> type(string=>$myinput)

      If I change the type to call to xml
      SOAP::Data-> type(xml=>$myinput)

      the encodingStyle is not included on the SOAP call anymore. So just by
      changing the Type call, the presence of the encoding style attribute
      changes. Can someone explain this to me?

      I also found that SOAPLite does not recognize a return message with an
      encoding type of 'http://xml.apache.org/xml-soap/literalxml. What are my
      options here?


      My ultimate goal is to have my Perl client create an XML DOM Element, passed
      in a SOAP packet as XML literal with the above encoding style to my SOAP
      Server. My SOAP Server will process the message and return XML Literal
      Element with the above encoding style and my client using SOAPLite will be
      able to accept this XML Element and process it using some XML DOM parser.
      Am I crazy?

      Here is a sample SOAP request that I have working when I use Apache SOAP
      client.

      POST /safari/servlet/rpcrouter HTTP/1.0
      Host: myhost
      Content-Type: text/xml; charset=utf-8
      Content-Length: 1049 SOAPAction: ""

      <?xml version='1.0' encoding='UTF-8'?>
      <SOAP-ENV:Envelope
      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
      xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
      xmlns:xsd="http://www.w3.org/1999/XMLSchema">
      <SOAP-ENV:Body>
      <ns1:ProcessRequest xmlns:ns1="urn:stockservice"
      SOAP-ENV:encodingStyle="http://xml.apache.org/xml-soap/literalxml">
      <input>
      <stock_ticker>MSFT</stock_ticker>
      </input>
      </ns1:ProcessRequest>
      </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>

      Any help or suggestions are greatly appreciated.
      Thanks,
      Craig





      _______________________________________________________
      http://inbox.excite.com
    Your message has been successfully submitted and would be delivered to recipients shortly.