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

Getting NoClassDefFound Errors in runtime processing

SA-574

Summary



The user observes NoClassDefFound errors on screen, in multiple places on various work flows.
The administrator observes multiple stack traces in the log files with the line


Caused by: java.lang.NoClassDefFoundError: com/pega/apache/log4j/spi/ThrowableInformation

associated with a variety of primary stack traces for each screen.

The administrator saw a correlation with external service calls made through HTTP and any exception returned in service response.

Error Messages



2014-08-11 06:13:36,390 [fault (self-tuning)'] [ STANDARD] [ ] ( etier.mdb.PRJMSListener) ERROR - PRPC Engine invocation failed, javax.ejb.EJBException: EJB Exception: : java.lang.RuntimeException: Problem during method invocation (invokeEngine)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingException(PRBootstrap.java:423)
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.init(PRJMSListener.java:172)
at com.pega.pegarules.session.internal.engineinterface.etier.mdb.PRJMSListener.onMessage(PRJMSListener.java:119)
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:583)
at weblogic.ejb.container.internal.MDListener.run(MDListener.java:902)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused by: java.lang.NoClassDefFoundError: com/pega/apache/log4j/spi/ThrowableInformation
at com.pega.apache.log4j.spi.LoggingEvent.<init>(LoggingEvent.java:155)
at com.pega.apache.log4j.Category.forcedLog(Category.java:391)
at com.pega.apache.log4j.Category.error(Category.java:322)
at com.pega.pegarules.priv.LogHelper.error(LogHelper.java:1459)
at com.pega.pegarules.integration.engine.internal.services.listener.ListenerStateManagerImpl$7.run(ListenerStateManagerImpl.java:1087)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:1032)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:733)
at com.pega.pegarules.integration.engine.internal.services.listener.ListenerStateManagerImpl.createMDBListener(ListenerStateManagerImpl.java:1062)
at com.pega.pegarules.integration.engine.internal.services.jms.JMSListenerServant.invoke(JMSListenerServant.java:100)
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.GeneratedMethodAccessor126.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)
... 20 more
; nested exception is: java.lang.RuntimeException: Problem during method invocation (invokeEngine)


Steps to Reproduce



Multiple.

Root Cause



The root cause of this problem is defect/misconfiguration in the PRPC operating environment.
The Administrator identified this occured when a service failure was occuring.
Caused by: java.lang.NoClassDefFoundError: com/pega/pegarules/session/internal/engineinterface/etier/engine/PRDiagnosticStream
indicates a database connectivity error is likely.
With the HFIX-9804 diagnostic installed the log showed a security exception was occuring during classloading from the database.


Resolution



Installed diagnostic hotfix-9804 to get additional information which confirmed error trying to load class from database was occuring.

There are three options that can resolve this issue:

1. Set the downgrade-untrusted-principal to false.

2. Enable "Cross Domain Security Between WebLogic Server Domains".

3. Enable "global trust between domains".
 
Suggest Edit

Published June 12, 2015 - Updated October 8, 2020

Did you find this content helpful? Yes No

Have a question? Get answers now.

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

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