Support Article
Unable to deploy Pega 7.1.5 EAR with MDB
SA-5185
Summary
User has added a MDB to the Pega 7.1.5 EAR and is unable to deploy. EJB version in Pega 7 is 2.1 and the generated MDB is not compatible. An error appeared when deploying the EAR.
Error Messages
The EAR file could be corrupt and/or incomplete. Make sure that the application is at a compatible Java(TM) Platform, Enterprise Edition (Java EE) level for the current version of WebSphere(R) Application Server.
com.ibm.websphere.management.application.client.AppDeploymentException [Root exception is org.eclipse.jst.j2ee.commonarchivecore.internal.exception.DeploymentDescriptorLoadException: META-INF/ejb-jar.xml]
---------------------
java.lang.IllegalStateException: Parent Translator (EnterpriseBeansTranslator(entity|session|message-driven,371463716))
did not find a Child Translator for "message-driven-destination". ]
Steps to Reproduce
Deploy the EAR after adding an MDB.
Root Cause
A defect in Pegasystems’ code.
Resolution
Perform the following local-change:
1. Remove the 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>
<destination-type>javax.jms.Topic</destination-type>
<subscription-durability>NonDurable</subscription-durability>
</message-driven-destination>
2. Remove the doctype defination 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">
3. Add the below tags to generated ejb-jar.xml:
<message-destination-type>javax.jms.Topic</message-destination-type>
Note: This issue is resolved in Pega 7.1.7.
Published December 7, 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.