IBM Support

IT26395: Non-ascii UTF-8 characters in messages put by the messaging RESTAPI are replaced with '?' characters

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • If a message containing some non-ascii UTF-8 characters is put
    using a POST to the IBM MQ messaging REST API URI:
    
    /ibmmq/rest/v1/messaging/qmgr/{qmgrName}/queue/{qName}/message
    
    each of those characters in the message that is put to the queue
    is replaced with a '?' character.
    

Local fix

  • Ensure the file.encoding JVM property is set for installations
    of the MQ web console.
    
    To make this change, edit the Liberty server configuration file:
    
    /var/mqm/web/installations//servers/<server_n
    ame>/jvm.options
    
    and add this line to the file:
    
    -Dfile.encoding=UTF8
    
    Once the file is saved with this line added, restart the server
    and test to confirm the behaviour.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects users of the messaging REST API attempting to
    POST messages to a queue containing UTF-8 characters which are
    not also ascii characters. The characters affected include (with
    their unicode values):
    
    å - lower case a ring     - 0229
    ä - lower case a umlaut - 0228
    ö - lower case o umlaut - 0246
    Å - upper case A ring     - 0197
    Ä - upper case A umlaut - 0196
    Ö - upper case O umlaut - 0214
    
    although any UTF-8 characters which are not also ascii
    characters are affected.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    When the POST to the messaging REST API URI was done, the
    message body data received by the underlying WebSphere
    Application Server Liberty server was converted into some
    internal Java objects for handling by the MQ messaging REST API
    code. The server JVM was not able to handle the specified
    characters correctly, and so the message put to the queue
    contained '?' characters instead of the originally specified
    characters.
    

Problem conclusion

  • Configuration properties have been set on the Liberty server to
    ensure that these specific characters are not replaced when
    received as part of the message body of a messaging REST API
    POST, and the message is put to the queue with the content in
    its original form.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v9.1 CD    9.1.5
    v9.1 LTS   9.1.0.5
    
    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

    IT26395

  • Reported component name

    IBM MQ BASE M/P

  • Reported component ID

    5724H7261

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-09-24

  • Closed date

    2019-11-25

  • Last modified date

    2020-01-07

  • 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

    IBM MQ BASE M/P

  • Fixed component ID

    5724H7261

Applicable component levels

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
07 January 2020