APAR status
Closed as program error.
Error description
When running a map from a WTX Map node in a Message Broker message flow, the WTX map audit information that is captured from a trace node using the memory option setting for map audit seems to be corrupted in the message tag. The audit reports the error as below: ---------------------------------------------------------------- <ExecutionSummary MapStatus="Error" mapreturn="8" ElapsedSec="0.0034" BurstRestartCount="0"> <Message>1 ..... (This message is garbled...) ----------------------------------------------------------------
Local fix
WTXCQ - WTX00035300 AR / AR Circumvention: None
Problem summary
Users Affected: Users of WebSphere Transformation Extender Map Node for WMB who use audit in memory with locales other than UTF-8 (codepage 1208). Problem Description: The problem is that XML does not handle character elements with more than one encoding - even when using CDATA. This is not a WTX limitation, but rather an XML limitation. -- in this defect, Japanese characters were sprinkled in with the UTF-8 data. Platforms Affected: All
Problem conclusion
To get around this, if you have audit data that has character encoding besides UTF-8 (codepage 1208), like Japanese, the data must be sent out the LocalEnvironment as binary data rather than as a character string. To rectify this defect the WTX for WMB Map node introduces a new operating system environment variable that when set to 1 will send the audit data out the LocalEnvironment as a byte array. Set: WTX_MQSI_AUDIT_AS_BYTE_ARRAY=1 in the environment prior to starting the execution group to enable this. Note, under Windows, if you run the Broker service as LocalService, you must reboot you computer for the change to take place. Downstream Nodes can access audit data as an array of bytes. Here is an example of how to do this in a Java Compute Node: MbMessage le = assembly.getLocalEnvironment(); MbElement e1 = le.getRootElement().getFirstElementByPath("WTX").getFirstElement ByPath("Audit").getLastChild(); byte[] b = (byte[])e1.getValue(); try { FileOutputStream fos = new FileOutputStream("c:\\temp\\outstream.txt"); fos.write(b); fos.close(); } catch (Exception e) { e.printStackTrace(); } In the next release, we will propose adding a new switch in the WTX Map node UI that will toggle between audit data as Character and audit data as Byte array, allowing this feature to be on a per node basis. Delivered in: 8.3.0.3
Temporary fix
Comments
APAR Information
APAR number
PM20715
Reported component name
WTX FOR INT SER
Reported component ID
5724M4010
Reported release
830
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2010-08-17
Closed date
2010-09-16
Last modified date
2010-09-23
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WTX FOR INT SER
Fixed component ID
5724M4010
Applicable component levels
R830 PSY
UP
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCKRDT","label":"WTX for Integration Servers"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.3","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
23 September 2010