IBM Support

javax.ejb.EJBException: Unable to initialize deferred EJB

Troubleshooting


Problem

The following exception was found in the systemOut.log: [3/4/15 15:17:28:674 EST] 0000003e ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed incident stream file /opt/IBM/WebSphere/AppServer/profiles/ctpProfile/logs/ffdc/cuaServer1_00 00003e_15.03.04_15.17.28_5.txt [3/4/15 15:17:28:707 EST] 00000033 EJBContainerI I WSVR0037I: Starting EJB jar: OLBBCalendarServiceEJB.jar [3/4/15 15:17:28:783 EST] 0000003e ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC opened incident stream file /opt/IBM/WebSphere/AppServer/profiles/ctpProfile/logs/ffdc/cuaServer1_0000003e_15.03.04_15.17.28_6.txt [3/4/15 15:17:28:788 EST] 0000003e ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed incident stream file /opt/IBM/WebSphere/AppServer/profiles/ctpProfile/logs/ffdc/cuaServer1_0000003e_15.03.04_15.17.28_6.txt [3/4/15 15:17:28:789 EST] 0000003e EJBContainerI W WSVR0111W: EJB Timer Service could not be started, EJBs implementing the TimedObject interface will not function properly. [3/4/15 15:17:28:794 EST] 0000003e ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl open FFDC0009I: FFDC opened incident stream file /opt/IBM/WebSphere/AppServer/profiles/ctpProfile/logs/ffdc/cuaServer1_0000003e_15.03.04_15.17.28_7.txt [3/4/15 15:17:28:798 EST] 0000003e ServiceLogger I com.ibm.ws.ffdc.IncidentStreamImpl resetIncidentStream FFDC0010I: FFDC closed incident stream file /opt/IBM/WebSphere/AppServer/profiles/ctpProfile/logs/ffdc/cuaServer1_0000003e_15.03.04_15.17.28_7.txt [3/4/15 15:17:28:799 EST] 0000003e EJBMDOrchestr E CNTR0080E: EJB Timer Service is not available for EJB implementing the javax.ejb.TimedObject interface: com.bmo.ctp.cua.agent.ftf.ejb.UserEventBackupTimerEJB. [3/4/15 15:17:28:813 EST] 0000003e EJBContainerI E WSVR0068E: Attempt to start EntepriseBean FTFAgentEAR#FTFAgent.jar#UserEventBackupTimerEJB failed with exception: com.ibm.ejs.container.EJBConfigurationException: EJB Timer Service not available for TimedObject EJB: com.bmo.ctp.cua.agent.ftf.ejb.UserEventBackupTimerEJB at com.ibm.ws.metadata.ejb.EJBMDOrchestrator.processTimeoutMetaData(EJBMDOrchestrator.java:6362) at com.ibm.ws.metadata.ejb.EJBMDOrchestrator.finishBMDInit(EJBMDOrchestrator.java:1386) at com.ibm.ws.runtime.component.EJBContainerImpl.finishDeferredBeanMetaData (EJBContainerImpl.java:4862) at com.ibm.ws.runtime.component.EJBContainerImpl$3.run(EJBContainerImpl.java:4675) at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118) at com.ibm.ws.runtime.component.EJBContainerImpl.initializeDeferredEJB(EJBContainerImpl.java:4671) at com.ibm.ejs.container.HomeOfHomes.getHome(HomeOfHomes.java:396) at com.ibm.ejs.container.HomeOfHomes.getHome(HomeOfHomes.java:336) ... In the FFDC logs: Exception = com.ibm.websphere.csi.EJBContainerException Source = com.ibm.ws.runtime.component.EJBContainerImpl.getTimerServiceSchedulerprobeid = 1772 Stack Dump = com.ibm.websphere.csi.EJBContainerException: EJB Timer Service not started at com.ibm.ws.runtime.component.EJBContainerImpl.getSchedulerInstance(EJBContainerImpl.java:1930) at com.ibm.ws.runtime.component.EJBContainerImpl.getTimerServiceScheduler(EJBContainerImpl.java:2328) at com.ibm.ejs.container.EJSContainer.getTimerServiceScheduler(EJSContainer.java:5345) ... Caused by: com.ibm.websphere.ce.cm.StaleConnectionException: Failed to start database '/opt/IBM/WebSphere/AppServer/profiles/ctpProfile/databases/EJBTimers/cuaServer1/EJBTimerDB', see the next exception for details.DSRA0010E: SQL State = XJ040, Error Code = 40,000 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:67) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:523) ...

Cause

The root cause of the problem is the EJB Timer Service could not be started due to embedded database problem

Resolving The Problem

The easiest way to recover from this is to delete the database by deleting the EJBTimerDB directory.

e.g.
/opt/IBM/WebSphere/AppServer/profiles/ctpProfile/databases/EJBTimers/cuaServer1/EJBTimerDB (please make a backup of the EJBTimers folder before removing it).

The server will automatically create the database again when the AppServer starts.

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"EJB Container","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"8.5.5;8.5;8.0;7.0;6.1","Edition":"Base;Network Deployment","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg21699234