Support Article
Not able to deploy MDB for JMS-MDB Listener in PRPC V7.1.5
SA-2589
Summary
JMS listener is generating invalid deployment descriptor (ejb-jar.xml) on PRPC 7.1.5 version.
Error Messages
Below exception is seen in WAS logs:
Parse exception for [ public ID [ null ] and system ID [ null ] ] [ java.lang.IllegalStateException: Parent Translator (EnterpriseBeansTranslator(entity|session|message-driven,1696032023)) did not find a Child Translator for "message-driven-destination".
Steps to Reproduce
1. Create the JMS queue, queue connection factory and activiation spec to be used by the listener on WAS end.
2. Create the JMS-MDB rule instance and generate the XML from Update Deployment Descriptor button on JMS Properties tab.(attachment 1)
3. Add the code snippet generated in step 1 in ebj-jar.xml
4. Update imb-ejb-jar-bnd.xmi file based on details given in the PDN document.
(https://pdn.pega.com/integration/how-to-deploy-a-jms-listener-as-a-message-driven-bean)
5. Try redepolying the EAR after these changes, we got the execption in attachment 2.
Root Cause
Generated ejb-jar.xml is failing to deploy in application server.
PRPC generated ejb-jar.xml is not compatible with ejb-jar_2_1.xsd. Hence it is not able to parse when application is deployed.
Resolution
Below changes to ejb-jar.xml resolves the issue:
1. Remove below section from generated ejb-jar.xml
<message-driven-destination id="MessageDrivenDestination_CaseMgmtEventListener">
<destination-type>javax.jms.Topic</destination-type>
<subscription-durability>NonDurable</subscription-durability>
</message-driven-destination>
2.Add below tags to generated ejb-jar.xml
<message-destination-type>javax.jms.Topic</message-destination-type>
3.Remove doctype definition from ejb-jar.xml
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
Published January 31, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.