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

JMS MDB Listener Error

SA-1450

Summary


PRPC 63 SP1 JMS MDB Listener with ‘replyTo’ is deployed on Weblogic 10.3.5 and queue that PRPC JMS MDB listening to is on Sonic MQ 8.5.1.15 - with a WebLogic 10.3.5 foreign JMS. When the response connection is created during JMS MDB listener initialization below exception is thrown. 

‘Caused by: javax.jms.JMSException: [JMSPool:169823]Failure occured on createQueueConnection. Unexpected return type.: java.lang.ClassCastException: weblogic.deployment.jms.PooledConnection_progress_message_jimpl_xa_XAConnection cannot be cast to javax.jms.QueueConnection’. 


Error Messages


--------------------------------
2014-07-15 17:30:43,070 [] [ STANDARD] [ ] ( services.jms.JMSListener) ERROR - Failed to send error report to 'ReplyTo' destination,
com.pega.pegarules.pub.services.ServiceException: Failed to intialize response connection(create response connection step)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.initMDBResponseConnection(JMSListener.java:933)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.handleException(JMSListener.java:1392)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.runOnce(JMSListener.java:694)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListenerServant.invoke(JMSListenerServant.java:110)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl._invokeEngine_privact(EngineImpl.java:312)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:263)
at com.pega.pegarules.session.internal.engineinterface.etier.ejb.EngineBean.invokeEngine(EngineBean.java:221)
at sun.reflect.GeneratedMethodAccessor202.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:349)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:390)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingException(PRBootstrap.java:412)
at com.pega.pegarules.internal.etier.ejb.EngineBeanBoot.invokeEngine(EngineBeanBoot.java:168)
at com.pega.pegarules.internal.etier.ejb.EngineBMT_h449u3_ELOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
at com.pega.pegarules.internal.etier.ejb.EngineBMT_h449u3_ELOImpl.invokeEngine(Unknown Source)
at com.pega.pegarules.session.internal.engineinterface.etier.mdb.PRJMSListener.callEngine(PRJMSListener.java:205)
at com.pega.pegarules.session.internal.engineinterface.etier.mdb.PRJMSListener.onMessage(PRJMSListener.java:127)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:349)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:390)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:439)
at com.pega.pegarules.internal.etier.mdb.PRJMSListenerBoot.onMessage(PRJMSListenerBoot.java:91)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:574)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:477)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:379)
at progress.message.jimpl.Session.deliver(Session.java:3080)
at progress.message.jimpl.Session.run(Session.java:2483)
at progress.message.jimpl.Session$SessionThread.run(Session.java:2875)
Caused by: javax.jms.JMSException: [JMSPool:169823]Failure occured on createQueueConnection. Unexpected return type.: java.lang.ClassCastException: weblogic.deployment.jms.PooledConnection_progress_message_jimpl_xa_XAConnection cannot be cast to javax.jms.QueueConnection
at weblogic.deployment.jms.JMSExceptions.getJMSException(JMSExceptions.java:29)
at weblogic.deployment.jms.PooledConnectionFactory.createQueueConnection(PooledConnectionFactory.java:202)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListener.initMDBResponseConnection(JMSListener.java:921)
... 32 more



Steps to Reproduce


Configure the JMS MDB listener with Sonic 
MQ 8.5.1.15 & Consume a JMS message.

Root Cause


PRPC is using JMS 1.0.2 API and Sonic MQ is using JMS 1.1 which does not support backward compatiblity.


Resolution


HFIX-9850 was provided to upgrade PRPC JMS API to 1.1.

 

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