Consultor Eletrônico



Kbase P140865: Special characters missing when transferring XML message from 4GL to SonicMQ
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   09/07/2009
Status: Unverified

SYMPTOM(s):

Special characters missing when transferring XML message from 4GL to SonicMQ

Receiving scandinavien characters in the CDATA[ section of the xml document fails if the client uses UTF8 as cpinternal , cpstream (utf8.pf)

FACT(s) (Environment):

OpenEdge 10.1C
OpenEdge Category: Language (4GL/ABL)
All Supported Operating Systems

CAUSE:

Bug# OE00181008

CAUSE:

We did have a LONGCHAR in the -cpinternal which has an XML prolog with an Encoding declaration saying it is "ISO-8859-1". In this failing case, the LONGCHAR codepage is UTF-8, but the text of the LONGCHAR says "ISO-8859-1". The text of this LONGCHAR is passed to the XML DOM parser, which looks at the prolog, and believes it is encoded as ISO-8859-1, without any conversion from UTF-8 to ISO-8859-1. This comes from xml-message.p and GetLongText, which converts the data from the wire to the -cpinternal, and stores it in a LONGCHAR without a fixed codepage. xml-message.p parses the LONGCHAR and returns the doc.

FIX:

Upgrade to OpenEdge version 10.1C04