Fixes are available
APAR status
Closed as program error.
Error description
When testing with message data encoded in various CCSIDs, it was discovered that when using CCSID 1200 the 'byte order mark' (BOM) is included in the message. This might cause trouble for the backend modules that are trying to read the messages. Part the message showing CCSID and BOM: Queue Manager : MYQM : Queue : MY.SAMPLE.TEST.QUEUE : Encoding : 000000785 CodedCharSetId : 000001047 UserIdentifier : `USERID PutApplType : 000000002 PutApplName : `RRSBATCH Message Buffer : 762 byte(s) 00: D9C6C840 00000002 000000FC 00000111 `RFH ............` 10: 000004B0 D4D8E2E3 D9404040 00000000 `....MQSTR ....` --- 1200 CCSID ... F0: 7970653E 3C2F7573 723E2020 FEFF0020 . ---- BOM
Local fix
Problem summary
**************************************************************** USERS AFFECTED: This issue affects users of: - The WebSphere MQ V7 classes for JMS. - The WebSphere MQ V7 Resource Adapter. - The WebSphere Application Server V7 WebSphere MQ messaging provider. - The WebSphere Application Server V8 WebSphere MQ messaging provider. - The WebSphere Application Server V6.1 WebSphere MQ messaging provider who have configured the WebSphere variable MQ_INSTALL_ROOT to point to a WebSphere MQ V7 installation. who have applications which construct JMS TextMessages containing String data encoded using Coded Character Set Identifier (CCSID) 1200, and then send that message using one of the following methods: * MessageProducer.send(Destination, Message) * MessageProducer.send(Destination, Message, int, int, long) * MessageProducer.send(Message) * MessageProducer.send(Message, int, int, long) * QueueSender.send(Message) * QueueSender.send(Message, int, int, long) * QueueSender.send(Queue, Message) * QueueSender.send(Queue, Message, int, int, long) Platforms affected: All Distributed (iSeries, all Unix and Windows) +Java +Java zOS **************************************************************** PROBLEM SUMMARY: The WebSphere MQ V7 classes for JMS and Resource Adapter map Coded Character Set Identifier 1200 to Java character set 'UnicodeBig'. When the WebSphere MQ classes for JMS and Resource Adapter are used to send a message that contains String data, they will convert any String data in the message body from Unicode into a series of bytes, depending upon the Coded Character Set Identifier specified in the message. This conversion is performed using routines provided by the Java Runtime Environment. When the WebSphere MQ V7 classes for JMS and Resource Adapter were used to send a message containing String data encoded in Coded Character Set Identifier 1200, the String data was converted from Unicode into a set of bytes using the Java character set UnicodeBig. This Java character set is defined as "unmarked", which meant that the Java Runtime Environment returned a set of bytes representing the message data, and added a Byte Order Mark to the front, indicating if the data was big-endian or little-endian.
Problem conclusion
The WebSphere MQ V7 classes for JMS and Resource Adapter have been updated to allow users to override the default mapping for Coded Character Set Identifier 1200, and map this Coded Character Set Identifier to Java character set UnicodeBigUnmarked. This allows the WebSphere MQ V7 classes for JMS and Resource Adapter to send messages containing String data encoded in Coded Character Set Identifier 1200 without including a Byte Order Mark at the start of the message body. The property name that allows this mapping to take place is: CCSID.MapCCSID1200ToUnicodeBigUnmarked and the property needs to have the value: YES There are three different ways to set the property: - Run the Java application with the following Java system property argument: -Dcom.ibm.mq.cfg.CCSID.MapCCSID1200ToUnicodeBigUnmarked=YES For example, to start a Java application called myJavaApp with this property set, run the command (all one one line): java -Dcom.ibm.mq.cfg.CCSID.MapCCSID1200ToUnicodeBigUnmarked=YES myJavaApp - Set the system environment variable: CCSID.MAPCCSID1200TOUNICODEBIGUNMARKED=YES prior to starting the Java application. - Add the following stanza to the WebSphere MQ client configuration file, mqclient.ini, that is being used by the Java application: CCSID: MapCCSID1200ToUnicodeBigUnmarked=YES For more information about using a WebSphere MQ client configuration file, please refer to the "WebSphere MQ client configuration file" section of the WebSphere MQ V7 Information Center: http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp ?topic=/com.ibm.mq.csqzaf.doc/cs13350_.htm --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: v7.0 Platform Fix Pack 7.0.1.8 -------- -------------------- Windows U200335 AIX U845856 HP-UX (PA-RISC) U847965 HP-UX (Itanium) U847970 Solaris (SPARC) U847966 Solaris (x86-64) U847972 iSeries 7.0.1.8 Linux (x86) U847967 Linux (x86-64) U847971 Linux (zSeries) U847968 Linux (Power) U847969 zOS 7.0.1.8 v7.1 Platform Fix Pack 7.1.0.1 -------- -------------------- Windows 7.1.0.1 AIX 7.1.0.1 HP-UX (PA-RISC) 7.1.0.1 HP-UX (Itanium) 7.1.0.1 Solaris (SPARC) 7.1.0.1 Solaris (x86-64) 7.1.0.1 iSeries 7.1.0.1 Linux (x86) 7.1.0.1 Linux (x86-64) 7.1.0.1 Linux (zSeries) 7.1.0.1 Linux (Power) 7.1.0.1 zOS 7.1.0.1 The latest available maintenance can be obtained from 'WebSphere MQ Recommended Fixes' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037 If the maintenance level is not yet available information on its planned availability can be found in 'WebSphere MQ Planned Maintenance Release Dates' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309 ---------------------------------------------------------------
Temporary fix
Comments
APAR Information
APAR number
IV08982
Reported component name
WMQ AIX V7
Reported component ID
5724H7221
Reported release
701
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2011-10-10
Closed date
2011-11-01
Last modified date
2012-01-16
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PM50628
Fix information
Fixed component name
WMQ AIX V7
Fixed component ID
5724H7221
Applicable component levels
R701 PSY
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSDEZSF","label":"IBM WebSphere MQ Managed File Transfer for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
31 March 2023