Hi
I've a scenario JMS -> PI -> IDOC scenario on SAP PI 7.11. JMS channel is configured to read data from the queue configured the Mainframe (z/OS) system.
Regular alpha & numeric characters are being converted correctly, but special characters such as ^, ¢ are causing the problem. For eg, ^ (cap sign) is being converted as ¢ (cent sign), ¢ (cent sign) is being converted a [ (square bracket) etc. However, " is being converted correctly.
I've found out the CCSID as 500 from the Mainframe team and configured it accordingly. I've tried using various character sets such as UTF-8, US-ASCII, ISO-8859-1, EBCDIC, Cp037, IBM037, Cp500 etc in the ContentType but none of them solved my problem.
I've checked a few forum posts and 'How_to_Work_with_Character_Encodings_in_Process_Integration_(NW7.0)' document. I've tried using XMLAnonymizer bean, but found out that it would not help because the content of JMS messages is ~ delimited plain text, not an XML.
Can you please help me troubleshoot this issue? How do I make sure that special characters are converted correctly?
So far, no message has failed because of special char conversion...they are being converted wrongly but not failing due to parsing or mapping error.
I greatly appreciate your inputs.
Thanks in advance
Praveen
Here is the Module configuration
Processing Sequence
Number | Module Name | Module Key |
---|---|---|
1 | SAP XI JMS Adapter/ConvertJMSMessageToBinary | convert_JMS2Bin |
2 | SAP XI JMS Adapter/ConvertBinaryToXMBMessage | convert_Bin2XI |
3 | AF_Modules/MessageTransformBean | Plain2XML |
4 | CallSapAdapter | call_AF_MS |
Module Configuration
Module Key | Parameter Name | Parameter Value |
---|---|---|
Plain2XML | Transform.Class | com.sap.aii.messaging.adapter.Conversion |
Plain2XML | Transform.ContentType | text/xml;charset=utf-8 |
In addition to the above I've configured the parameters for conversion type StructPlain2XML (similar to FCC, used ~ as field separator)