[ 
https://issues.apache.org/jira/browse/AXIS2-1558?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12831347#action_12831347
 ] 

Kirill Lastovirya commented on AXIS2-1558:
------------------------------------------

Just want to leave some sensible resume, at least for stupid guy like me. The 
idea is that in escaped XML only '<' character is to be escaped. '>' is ok to 
leave unescaped . This is taken from XML definition. So Axis2 does not want to 
do excessive work and leave > signs unescaped.

> problem receiving escaped XML in payload
> ----------------------------------------
>
>                 Key: AXIS2-1558
>                 URL: https://issues.apache.org/jira/browse/AXIS2-1558
>             Project: Axis2
>          Issue Type: Bug
>          Components: om
>    Affects Versions: nightly
>         Environment: 32-bit Windows
>            Reporter: Tony Dean
>            Assignee: Deepal Jayasinghe
>
> The following SOAP is sent from .NET to a 
> org.apache.axis2.receivers.RawXMLINOutMessageReceiver Axis2 endpoint:
> POST /axis2/services/myService HTTP/1.1
> User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client 
> Protocol 2.0.50727.42)
> VsDebuggerCausalityData: 
> uIDPoy26NIt2oGVMu3AaAaVfY/EAAAAAtJkH+jUVSkSoJtku7vQ/4n/vP3Qd2/BFs7BqUl9s3GUACAAA
> SOAPAction: ""
> Host: d4639:8080
> Content-Type: multipart/related; type="application/xop+xml"; 
> boundary=--MIMEBoundary632978239375477793; 
> start="<0.632978239375477...@example.org>"; start-info="text/xml; 
> charset=utf-8"
> Content-Length: 2018
> Expect: 100-continue
> Connection: Keep-Alive
> ----MIMEBoundary632978239375477793
> content-id: <0.632978239375477...@example.org>
> content-type: application/xop+xml; charset=utf-8; type="text/xml; 
> charset=utf-8"
> content-transfer-encoding: binary
> <soap:Envelope xmlns:xop="http://www.w3.org/2004/08/xop/include"; 
> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"; 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
> xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"; 
> xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
>  
> xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";><soap:Header><wsa:Action></wsa:Action><wsa:MessageID>urn:uuid:3190bf5b-4944-4d5f-8362-fed2fdaf294c</wsa:MessageID><wsa:ReplyTo><wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address></wsa:ReplyTo><wsa:To>http://d4639:8080/axis2/services/myService</wsa:To><wsse:Security><wsu:Timestamp
> wsu:Id="Timestamp-444822f9-5e62-401d-9537-85bff44e5248"><wsu:Created>2006-10-30T21:52:17Z</wsu:Created><wsu:Expires>2006-10-30T21:57:17Z</wsu:Expires></wsu:Timestamp></wsse:Security></soap:Header><soap:Body><copyintoout
>  
> xmlns="http://tempuri.org/myService";><parameters><parm1><String>hi</String></parm1><parm2><String>value1</String></parm2><parm3><Int>300</Int></parm3><parm4><Int>200</Int></parm4><parm5><Double>14.5</Double></parm5><parm6><Double>100</Double></parm6><parm7><Date>2006-10-13</Date></parm7><parm12><Date>13:30:00.0000000-05:00</Date></parm12><parm14><Color
>  r="3" g="2" b="1" 
> /></parm14><parm15><String>hi15</String></parm15><parm16><IntegerRange 
> minValue="78" maxValue="89" 
> /></parm16><parm17><Date>2006-10-30</Date></parm17></parameters><streams><instream><Value
>  
> xsi:type="xsd:string">&lt;TABLE&gt;&lt;InData&gt;&lt;col1&gt;1&lt;/col1&gt;&lt;col2&gt;2&lt;/col2&gt;&lt;/InData&gt;&lt;/TABLE&gt;</Value></instream></streams></copyintoout></soap:Body></soap:Envelope>
> ----MIMEBoundary632978239375477793--
> Notice that .NET escaped the contents of the <Value> element.
> <Value 
> xsi:type="xsd:string">&lt;TABLE&gt;&lt;InData&gt;&lt;col1&gt;1&lt;/col1&gt;&lt;col2&gt;2&lt;/col2&gt;&lt;/InData&gt;&lt;/TABLE&gt;</Value>
> When I receive the contents of the <Value> element at runtime, I see that 
> Axis2 has the following content:
> <Value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
> xsi:type="xsd:string">&lt;TABLE>&lt;InData>&lt;col1>1&lt;/col1>&lt;col2>2&lt;/col2>&lt;/InData>&lt;/TABLE></Value>
> Notice that &lt; is still escaped, but the &gt; are unescaped.  When I ask 
> the Axis2 engine for <Value> children, it thinks that it has none.  <TABLE> 
> should be its one and only child element.
> Can someone explain what's going on here?  Why < remains escaped as &lt; and 
> > are unescaped.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to