Page tree
Skip to end of metadata
Go to start of metadata

Category:Deployment failed

Problem

Cannot deploy application due to the java.lang.NoClassDefFoundError exception

Keywords

  • java.lang.NoClassDefFoundError
  • deployment dependency
  • reference problem

Symptoms

During deployment similar error appears:

ERROR: Not deployed. Deploy Service returned ERROR:
java.rmi.RemoteException: Cannot deploy application sap.com/is~cmp~mop~bl..
Reason: Exception during generation of components of application sap.com/is~cmp~mop~bl in container EJBContainer.; nested exception is:
	com.sap.engine.services.deploy.exceptions.ServerDeploymentException: Exception during generation of components of
application sap.com/is~cmp~mop~bl in container EJBContainer.

...
...
...

Caused by: java.lang.NoClassDefFoundError: com/sap/icod/mop/webservice/proxy/addopercomptextorder/Z_AddOperCompTextOrderService
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:1618)
	at java.lang.Class.getConstructors(Class.java:865)
	at com.sap.engine.services.ejb.deploy.verifier.BeanClassCheck.check(BeanClassCheck.java:33)
	at com.sap.engine.services.ejb.deploy.verifier.session.SessionBeanCheck.check(SessionBeanCheck.java:51)
	at com.sap.engine.services.ejb.deploy.verifier.Verifier.checkBean(Verifier.java:82)
	at com.sap.engine.services.ejb.deploy.verifier.Verifier.check(Verifier.java:46)
	at com.sap.engine.services.ejb.deploy.DeployAdmin.generate(DeployAdmin.java:253)
	at com.sap.engine.services.ejb.EJBAdmin.deploy(EJBAdmin.java:2144)
	at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:606)
	... 16 more

Solution

Such problem occurs when the application that is deployed has hard references to one or more other application from the same deployed component and these referenced applications are:

  • Not included into the currently deployed component.
  • The reference between the deployed application and the referenced applications is not described. Deploy-time and runtime dependencies have to be defined. Deploy-time references are defined in SAP_MANIFEST.MF and runtime references - in application-j2ee-engine.xml. The necessary dependencies have to be added into these files.

How are these dependencies added and where?
The deploy infrastructure operates with already produced SDAs. Unfortunately, they do not contain any information how they were built. The deploy infrastructure gets only the final result and uses the SAP_MANIFEST.MF and application_j2ee_engine.xml without any insight how this was constructed at design time. We can tell you how to structure your application in terms of modules, libraries and interdependencies. We cannot help you with details how to describe these dependencies in the respective build & design tools (NWDI, Japro, etc.).

In case of such problem, please, send us a notification to get into contact with the responsibles.

Sample logs

ERROR: Not deployed. Deploy Service returned ERROR:
java.rmi.RemoteException: Cannot deploy application sap.com/is~cmp~mop~bl..
Reason: Exception during generation of components of application sap.com/is~cmp~mop~bl in container EJBContainer.; nested exception is:
	com.sap.engine.services.deploy.exceptions.ServerDeploymentException: Exception during generation of components of
application sap.com/is~cmp~mop~bl in container EJBContainer.
	at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:568)
	at com.sap.engine.services.deploy.server.DeployServiceImplp4_Skel.dispatch(DeployServiceImplp4_Skel.java:1555)
	at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:320)
	at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:198)
	at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129)
	at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process
(ApplicationSessionMessageListener.java:33)
	at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
	at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
	at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
Caused by: com.sap.engine.services.deploy.exceptions.ServerDeploymentException: Exception during generation of components of
application sap.com/is~cmp~mop~bl in container EJBContainer.
	at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:621)
	at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:321)
	at com.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:307)
	at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:292)
	at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:326)
	at com.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:3184)
	at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:553)
	... 10 more
Caused by: java.lang.NoClassDefFoundError: com/sap/icod/mop/webservice/proxy/addopercomptextorder/Z_AddOperCompTextOrderService
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:1618)
	at java.lang.Class.getConstructors(Class.java:865)
	at com.sap.engine.services.ejb.deploy.verifier.BeanClassCheck.check(BeanClassCheck.java:33)
	at com.sap.engine.services.ejb.deploy.verifier.session.SessionBeanCheck.check(SessionBeanCheck.java:51)
	at com.sap.engine.services.ejb.deploy.verifier.Verifier.checkBean(Verifier.java:82)
	at com.sap.engine.services.ejb.deploy.verifier.Verifier.check(Verifier.java:46)
	at com.sap.engine.services.ejb.deploy.DeployAdmin.generate(DeployAdmin.java:253)
	at com.sap.engine.services.ejb.EJBAdmin.deploy(EJBAdmin.java:2144)
	at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:606)
	... 16 more

Related SAP Notes

N/A

  • No labels