Support Article
Pega does not shut down on JBoss
SA-21077
Summary
During weekly maintenance, Pega environment does not shut down and must be ended on the JBoss server. When shutdown is first initiated, error messages appear indicating Database-level exceptions.
Error Messages
01:01:20,616 INFO [org.jboss.as.connector.deployment] (MSC service thread 1-1) JBAS010410: Unbound JCA ConnectionFactory [java:/JmsXA]
01:01:20,618 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-6) JBAS010409: Unbound data source [java:/jdbc/GARC]
01:01:20,631 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010409: Unbound data source
.
.
.
Steps to Reproduce
Bounce JBoss, which is the application server on which Pega WARs are deployed.
Root Cause
JBoss CLI Shutdown command will destroy resources unless it can detect a dependency on it. Important resources such as jdbc/PegaRULES cannot be destroyed early in the shutdown process as they are still needed. Pega applications on JBoss must be setup so that the application server understands that this resource has dependent processes. Lookup name (with JBoss specific namespace) is needed to make sure it is not cleaned up prematurely.
Data sources were injected using CLI scripts after JBoss was started and before Pega was deployed.
Resolution
Update the web.xml file to include a lookup name in the entry for ResourceRef_1:
<resource-ref id="ResourceRef_1">
<description>PegaRULES datasource</description>
<res-ref-name>jdbc/PegaRULES</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<lookup-name>java:jboss/PegaRULES</lookup-name>
<res-sharing-scope>Shareable</res-sharing-scope> <!-- Shareable is default -->
</resource-ref>
The file is found in prweb.war. Redeploy the application after updating.
This issue is corrected in Pega 7.2.1.
An external data source was also used. Add a ResourceRef_A entry to web.xml as well as the following entry in the jboss-web.xml file.
<resource-ref>
<res-ref-name>jdbc/ExternalDB</res-ref-name>
<jndi-name>java:/jdbc/ExternalDB</jndi-name>
</resource-ref>
Published March 18, 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.