Hi Bruce,
Yes I was using this kind of tag but I was not using the XML entities < and > but the < and > signs.
Stephane
Bruce McHaffie wrote:
Thanks for your suggestion Stephane. I tried it out. The parser is now getting the following SOAP message:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getEnvelopeRecipientResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://localhost:8080/axis/EntrustUserNameLookupService.jws">
<ns1:getEnvelopeRecipientReturn xsi:type="xsd:string"><![CDATA[ <p>some text<br>more here</p> ]]></ns1:getEnvelopeRecipientReturn>
</ns1:getEnvelopeRecipientResponse> </soapenv:Body> </soapenv:Envelope>
You can see the CDATA part, but Xerces is still choking on it. Is this the kind of tagging you were using?
Bruce.
-----Original Message----- From: Stephane Antonietti [mailto:[EMAIL PROTECTED] Sent: February 8, 2005 8:29 PM To: Apache AXIS C User List Subject: Re: returning XML as xsd:string
Hi Guys
I was playing with this stuff a couple of months ago. Did you try to embed you XML string in CDATA Tag. I works fine for me. Then you prevent your XML parser to deal with that string.
Hope it'll help
Regards
-- Stephane Antonietti Sr Technical Consultant
Experian-Scorex, Monaco
-----------------------------------------------
Tel : +377 97 98 54 89
Fax: +377 97 98 54 54
Mob:+377 678 635 347
-----------------------------------------------
[EMAIL PROTECTED]
www.experian-scorex.com
John Bodfish wrote:
> Bruce:
>
> >
> Embedding an XML document in a SOAP message (which is an XML document
> itself) is nearly impossible to do in with any guarantee that it will
> work for any arbitrary document - unless you transform the XML document
> into a character encoding that won't contain any characters that are
> treated specially by the XML parser at the receiving end.
>
> >
> See http://webservices.xml.com/pub/a/ws/2002/08/28/endpoints.html for
> more details. The author's conclusion: "Unfortunately, while it can be
> prohibitively expensive (in terms of message size and memory use),
> Base64 strings have been the only approach that works and is portable."
> Note that if you choose this approach your application (and those you
> exchange message with) will have to convert the embedded XML document to
> and from Base64.
>
> >
> John
>
> >
> ----------------------------------------------------------------------
> --
>
> *From:* Bruce McHaffie [mailto:[EMAIL PROTECTED]
> *Sent:* Tuesday, February 08, 2005 4:36 PM
> *To:* '[email protected]'
> *Subject:* returning XML as xsd:string
>
> >
> Hi, I have a Java web service that returns xsd:string data to the Axis
> C++ client. I have noticed that if the returned string contains angle
> brackets (<>) then the client fails (with a heap corruption message --
> I'm running in debug). The SOAP message is returned correctly, and the
> start element is found. The error seems to happen when the client tries
> to parse the message for the content of the string.
>
> >
> Client fails at: getElementAsString( AxisChar* pName, AxisChar*
> pNamespace)
>
> File is: SoapDeSerializer.cpp
>
> Line number is: 3049 in Axis C++ 1.4,
>
> Call is: m_pNode = m_pParser->next (true);
>
> >
> Sample SOAP message that fails:
>
> >
> <soapenv:Envelope>
> <soapenv:Body>
> <getEnvelopeRecipientResponse
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <getEnvelopeRecipientReturn xsi:type="xsd:string"><Any string at
> all></getEnvelopeRecipientReturn>
> </getEnvelopeRecipientResponse>
> </soapenv:Body>
> </soapenv:Envelope>
>
> >
> Sample SOAP message that works:
>
> >
> <soapenv:Envelope>
> <soapenv:Body>
> <getEnvelopeRecipientResponse
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <getEnvelopeRecipientReturn xsi:type="xsd:string">Any string at
> all</getEnvelopeRecipientReturn>
> </getEnvelopeRecipientResponse>
> </soapenv:Body>
> </soapenv:Envelope>
>
> >
> I tried escaping the angle brackets with < and > but that didn't
> solve the problem. Any ideas?
>
> >
> Thanks,
>
> >
> Bruce.
>
> >
***************************************************************************************************************************************
This e-mail and any attachments may be confidential and/or legally privileged. If you have received this e-mail and you are not a named addressee, please inform the Experian-Scorex IT Service Desk on +377 97 98 54 54 and then delete the e-mail from your system. If you are not a named addressee you must not use, disclose, distribute, copy, print or rely on this e-mail. Although Experian-Scorex routinely screens for viruses, addressees should scan this e-mail and any attachments for viruses. Experian-Scorex makes no representation or warranty as to the absence of viruses in this E-mail or any attachments. Please note that to ensure regulatory compliance and for the protection of its clients and business, Experian-Scorex may monitor and read e-mails sent to and from its servers
**************************************************************************************************************************************
-- Stephane Antonietti Sr Technical Consultant
Experian-Scorex, Monaco
-----------------------------------------------
Tel : +377 97 98 54 89
Fax: +377 97 98 54 54
Mob:+377 678 635 347
-----------------------------------------------
[EMAIL PROTECTED]
www.experian-scorex.com *************************************************************************************************************************************** This e-mail and any attachments may be confidential and/or legally privileged. If you have received this e-mail and you are not a named addressee, please inform the Experian-Scorex IT Service Desk on +377 97 98 54 54 and then delete the e-mail from your system. If you are not a named addressee you must not use, disclose, distribute, copy, print or rely on this e-mail. Although Experian-Scorex routinely screens for viruses, addressees should scan this e-mail and any attachments for viruses. Experian-Scorex makes no representation or warranty as to the absence of viruses in this E-mail or any attachments. Please note that to ensure regulatory compliance and for the protection of its clients and business, Experian-Scorex may monitor and read e-mails sent to and from its servers **************************************************************************************************************************************
