SOAPLite and XML Parameters
- 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
This works well if with the following type call.
SOAP::Data -> type(string=>$myinput)
If I change the type to call to xml
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
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
POST /safari/servlet/rpcrouter HTTP/1.0
Content-Type: text/xml; charset=utf-8
Content-Length: 1049 SOAPAction: ""
<?xml version='1.0' encoding='UTF-8'?>
Any help or suggestions are greatly appreciated.