IBM Support

PH13211: EXCEPTIONS FROM JMS MONITORING WITH ACTIVEMQ

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

  • The trace-dc-bcm.log is filled with the following errors:
    
    <Trace Level="ERROR">
     <Time Millis="1558617823379"> 2019-05-23
    15:23:43.379+02:00</Time>
     <Server Format="IP">javaappws-t01</Server>
     <ProductId>CYN</ProductId>
     <Component>CYN.trc.toolkit.ai.callbacks.captureJMS.JMSCallback<
    /Component>
     <ProductInstance>22822</ProductInstance>
     <LogText><![CDATA[]]></LogText>
     <Source
    FileName="com.ibm.tivoli.itcam.toolkit.ai.callbacks.captureJMS.J
    MSCallback" Method="beforeSubscriberReceiveInstance(int
    consumerMask, String className, String methodName,
    MessageConsumer receiver, IRememberedObject
    rememberedAccessor)"/>
     <Thread>jmsContainerTracer-1</Thread>
     <Exception><![CDATA[java.lang.ClassCastException:
    org.apache.activemq.artemis.jms.client.ActiveMQQueue cannot be
    cast to javax.jms.Topic
     at
    org.apache.activemq.artemis.jms.client.ActiveMQMessageConsumer.g
    etTopic(ActiveMQMessageConsumer.java:171)
     at
    com.ibm.tivoli.itcam.toolkit.ai.callbacks.captureJMS.JMSCallback
    .beforeSubscriberReceiveInstance(JMSCallback.java:2305)
     at
    com.ibm.tivoli.itcam.toolkit.ai.callbacks.captureJMS.JMSCallback
    .beforeSubscriberReceive(JMSCallback.java:2238)
     at
    org.apache.activemq.artemis.jms.client.ActiveMQMessageConsumer.r
    eceive(ActiveMQMessageConsumer.java)
     at
    org.springframework.jms.support.destination.JmsDestinationAccess
    or.receiveFromConsumer(JmsDestinationAccessor.java:130)
     at
    org.springframework.jms.listener.AbstractPollingMessageListenerC
    ontainer.receiveMessage(AbstractPollingMessageListenerContainer.
    java:416)
     at
    org.springframework.jms.listener.AbstractPollingMessageListenerC
    ontainer.doReceiveAndExecute(AbstractPollingMessageListenerConta
    iner.java:302)
     at
    org.springframework.jms.listener.AbstractPollingMessageListenerC
    ontainer.receiveAndExecute(AbstractPollingMessageListenerContain
    er.java:255)
     at
    org.springframework.jms.listener.DefaultMessageListenerContainer
    $AsyncMessageListenerInvoker.invokeListener(DefaultMessageListen
    erContainer.java:1166)
     at
    org.springframework.jms.listener.DefaultMessageListenerContainer
    $AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageLi
    stenerContainer.java:1158)
     at
    org.springframework.jms.listener.DefaultMessageListenerContainer
    $AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer
    .java:1055)
     at java.lang.Thread.run(Thread.java:748)
    ]]></Exception>
     <Principal>javaappws-t01/192.168.41.167</Principal>
    </Trace>
    
    This is due to ActiveMQMessageConsumer implments both
    javax.jms.QueueReciever and javax.jms.TopicSubscriber interfaces
    that has a common method called receive().  ITCAM tries to get a
    topic when the JMS destination is a queue and vice versa leading
    to the ClassCastException.
    

Local fix

Problem summary

  • ****************************************************************
    *
    * USERS AFFECTED:
    *
    * Active MQ systems that are embedded within an application
    * server (usually JBoss EAP) monitored by ITCAM for J2EE or
    * ITCAM for WebSphere.
    *
    ****************************************************************
    *
    * PROBLEM DESCRIPTION:
    *
    * The following exception is seen in the ITCAM's
    * trace-dc-bcm.log:
    *
    * <Thread>jmsContainerTracer-1</Thread>
    *  <Exception><![CDATA[java.lang.ClassCastException:
    * org.apache.activemq.artemis.jms.client.ActiveMQQueue cannot be
    * cast to javax.jms.Topic
    * at
    * org.apache.activemq.artemis.jms.client.
    * ActiveMQMessageConsumer.getTopic(
    * ActiveMQMessageConsumer.java:171)
    * at
    * com.ibm.tivoli.itcam.toolkit.ai.callbacks.captureJMS.
    * JMSCallback .beforeSubscriberReceiveInstance
    * (JMSCallback.java:2305)
    *  at
    * com.ibm.tivoli.itcam.toolkit.ai.callbacks.captureJMS.
    * JMSCallback.beforeSubscriberReceive
    * (JMSCallback.java:2238)
    *
    * This is due to ActiveMQMessageConsumer implments both
    * javax.jms.QueueReciever and javax.jms.TopicSubscriber
    * interfaces that has a common method called receive().
    * ITCAM tries to get a topic when the JMS destination is a
    * lqueue and vice versa leading to the ClassCastException.
    *
    * Though the main user requests that invoke the ActiveMQ is
    * monitored correctly, the nested JMS calls will not be
    * counted correctly due to this error.
    *
    ****************************************************************
    

Problem conclusion

  • The fix for this APAR is contained in the following maintenance
    release:
    
      | interim fix | 7.1.1.0-TIV-ITCAM_J2EE-IF0007
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH13211

  • Reported component name

    TCAM AD WAS DC

  • Reported component ID

    5724Y92DC

  • Reported release

    720

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-06-11

  • Closed date

    2019-08-19

  • Last modified date

    2019-08-19

  • 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

    TCAM AD WAS DC

  • Fixed component ID

    5724Y92DC

Applicable component levels

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SS3PGL","label":"Tivoli Composite Application Manager for WebSphere"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"720","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
19 August 2019