Kbase P148137: Special characters in SOAP messages are escaped by the OpenEdge Web Service client
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  06/07/2009 |
|
Status: Unverified
SYMPTOM(s):
Special characters in SOAP messages are escaped by the OpenEdge Web Service client
Some string characters in SOAP messages are escaped by the OpenEdge Web Service client
FACT(s) (Environment):
The characters are received or sent using an ABL CHARACTER variable
The escaped characters are part of a string parameter
The escaped characters are part of an XML element that is defined by the WSDL document as data type string
OpenEdge 10.x
All Supported Operating Systems
FIX:
If the WSDL document indicates that the parameter is a string, then the content will be escaped since characters such as < , > or & are illegal string characters according to the XML standards. For example these characters will become < , > and & .
One workaround is to manually modify the WSDL document to use a complexType that includes the <xsd:any> element. For example:
------------------
<complexType name='MYanyType'>
<sequence>
<any/>
</sequence>
</complexType>
------------------
Then change the parameter in the WSDL document to reflect this change, for example:
------------------
<message name='MyRequest'>
<part name='parameter1' type='ns1:MYanyType'/>
</message>
------------------