IBM Support

IV39708: WEBSPHERE MQ V7 JMS APPLICATION RECEIVES A JAVA.LANG.NUMBERFORMATEXCEPTION WHEN CONSUMING MESSAGES.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A WebSphere MQ V7 JMS application that consumes a JMS Message
    may encounter the following exception when parsing the JMS
    header fields contained within the jms folder:
    
    Exception in thread "main" java.lang.NumberFormatException: For
    input
    string: "" at java.lang.NumberFormatException.forInputString
    (NumberFormatException.java:59)
    at java.lang.Long.parseLong(Long.java:442)
    
    at java.lang.Long.parseLong(Long.java:479)
    
    at
    com.ibm.msg.client.wmq.common.internal.messages.WMQMessageBase._
    parseJmsFolder(WMQMessageBase.java:1345)
    
    at
    com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarsha
    l.constructProviderMessageFromRFH2(WMQReceiveMarshal.java:420)
    
    at
    com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarsha
    l.constructProviderMessageFromProperties
    (WMQReceiveMarshal.java:193)
    
    at
    com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarsha
    l.createProviderMessage(WMQReceiveMarshal.java:490)
    
    at
    com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarsha
    l.exportProviderMessage(WMQReceiveMarshal.java:650)
    
    at
    com.ibm.msg.client.wmq.internal.WMQConsumerShadow.getMsg
    (WMQConsumerShadow.java:1348)
    
    at
    com.ibm.msg.client.wmq.internal.WMQSyncConsumerShadow.receiveInt
    ernal(WMQSyncConsumerShadow.java:233)
    
    at
    com.ibm.msg.client.wmq.internal.WMQConsumerShadow.receive
    (WMQConsumerShadow.java:1038)
    
    at
    com.ibm.msg.client.wmq.internal.WMQMessageConsumer.receive
    (WMQMessageConsumer.java:459)
    
    at
    com.ibm.msg.client.jms.internal.JmsMessageConsumerImpl.receiveIn
    boundMessage(JmsMessageConsumerImpl.java:780)
    
    at
    com.ibm.msg.client.jms.internal.JmsMessageConsumerImpl.receive
    (JmsMessageConsumerImpl.java:461)
    
    at
    com.ibm.mq.jms.MQMessageConsumer.receive
    (MQMessageConsumer.java:258)
    

Local fix

  • Update the application that is calling MessageConsumer.receive()
    to receive messages using a message selector, so that it does
    one of the following three options:
    
    - specifies a JMS message selector on the
    MessageConsumer.receive() call where the message selector
    contains the string 'tms=0'
    - specifies a JMS message selector on the
    MessageConsumer.receive() call that does not check the value of
    the tms field in the MQRFH2 header.
    - does not specify a JMS message selector on the
    MessageConsumer.receive() call.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Users of the below environments who are using a JMS Application
    to consume JMS messages whose RFH2 folder have been constructed
    by a third party application to contain a null value for the Tms
    property
    
    - The WebSphere MQ V7.0.1, V7.1, V7.5 classes for JMS.
    - The WebSphere MQ V7.0.1, V7.1, V7.5 Resource Adapter.
    
    - The WebSphere Application Server V7 and V8 WebSphere MQ
    messaging provider.
    
    Platforms affected:
    All Distributed (iSeries, all Unix and Windows) +Java
    ****************************************************************
    PROBLEM SUMMARY:
    A JMS Message being transported by WebSphere MQ often contains
    an MQRFH2 header
    which carries JMS-specific data that is associated with the
    message content.
    One of the folders present in an MQRFH2 header is the jms folder
    which contains JMS header fields, and JMSX properties that
    cannot be fully expressed in the MQMD header of the WebSphere
    MQ Message.
    
    When using the WebSphere MQ V7 classes for JMS, when attempting
    to consume a message, a NumberFormatException was
    thrown if the jms folder of the MQRFH2 header of the WebSphere
    MQ message
    contained a null value
    for the Tms property. This exception resulted in the
    application terminating.
    

Problem conclusion

  • The WebSphere MQ Classes for JMS now protect against the
    NumberFormatException being thrown and instead return a
    "JMSCMQ1050: The MQRFH2 header has an incorrect format" error
    code if the MQRFH2 header contains invalid data.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
                       v7.0
    Platform           Fix Pack 7.0.1.11
    --------           --------------------
    Windows            7.0.1.11
    AIX                7.0.1.11
    HP-UX (PA-RISC)    7.0.1.11
    HP-UX (Itanium)    7.0.1.11
    Solaris (SPARC)    7.0.1.11
    Solaris (x86-64)   7.0.1.11
    iSeries            7.0.1.11
    Linux (x86)        7.0.1.11
    Linux (x86-64)     7.0.1.11
    Linux (zSeries)    7.0.1.11
    Linux (Power)      7.0.1.11
    
                       v7.1
    Platform           Fix Pack 7.1.0.4
    --------           --------------------
    Windows            7.1.0.4
    AIX                7.1.0.4
    HP-UX (Itanium)    7.1.0.4
    Solaris (SPARC)    7.1.0.4
    Solaris (x86-64)   7.1.0.4
    iSeries            7.1.0.4
    Linux (x86)        7.1.0.4
    Linux (x86-64)     7.1.0.4
    Linux (zSeries)    7.1.0.4
    Linux (Power)      7.1.0.4
    
    Platform           v7.5
    --------           --------------------
    Multiplatforms     7.5.0.3
    
    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

    IV39708

  • 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

    2013-04-11

  • Closed date

    2013-05-31

  • Last modified date

    2013-09-18

  • 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

    WMQ AIX V7

  • Fixed component ID

    5724H7221

Applicable component levels

  • R701 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCPQ63","label":"APAR \/ Maintenance"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
18 September 2013