Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Issue in JMS-MDB-Listener implementation

SA-3606

Summary



The issue we are facing is explained below:-
As soon as there is a message in the queue, Pega is reading that message and we are able to process the work object. But recently we have noticed that every time incoming message comes in, the following exception is thrown in the logs.

Error Messages



2014-10-29 11:19:46,872 [ JMS-Thread-8004] [ STANDARD] [ ] ( services.jms.JMSListener) ERROR .CheckGMITradeUpdate - Caught java.lang.ClassCastException in listener CheckGMITradeUpdate
java.lang.ClassCastException: com.ibm.ws.naming.jndicos.CNContextImpl incompatible with javax.jms.ConnectionFactory
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.initializeConnection(JMSListener.java:988)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.runPoller(JMSListener.java:739)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.run_(JMSListener.java:734)
at com.pega.pegarules.integration.engine.internal.services.listener.ServiceListenerBaseImpl.run(ServiceListenerBaseImpl.java:442)
at java.lang.Thread.run(Thread.java:736)


Steps to Reproduce



Receive a message via the JMS Listener


Root Cause



The root cause of this problem is a defect in customer application code/rules.
The EAR file was corrupt.
Also,
the prbootstrap entry was changed from
"com.pega.pegarules.bootstrap.allclasses.datasource=java:comp/env/jdbc/PegaRULES"
 to "com.pega.pegarules.bootstrap.allclasses.datasource=jdbc/PegaRULES".
Once we have deployed an EAR without this change, the JMS MDB listener is
working perfectly fine.



Resolution



This issue is resolved by making the following change to the PRPC operating environment:

prbootstrap entry was changed from
"com.pega.pegarules.bootstrap.allclasses.datasource=java:comp/env/jdbc/PegaRULES"
 to "com.pega.pegarules.bootstrap.allclasses.datasource=jdbc/PegaRULES".
 

Published January 31, 2016 - Updated October 8, 2020

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us