cancel
Showing results for 
Search instead for 
Did you mean: 

Exception during deployment of EJB application

Amey-Mogare
Contributor
0 Kudos

Hi Experts,

I'm deploying one EJB application which is giving following warning.

What's the cause of it?

-


Caught exception during application startup from SAP J2EE Engine's deploy service:

java.rmi.RemoteException: Error occurred while starting application asianpaints.com/bsApp and wait.

Reason: Clusterwide exception: server ID 8216350:com.sap.engine.services.ejb.exceptions.deployment.EJBDeploymentException: The DataSource for PersistenceManager J2EDB is not created.

at com.sap.engine.services.ejb.entity.pm.PersistenceManager.initDataSource(PersistenceManager.java:217)

at com.sap.engine.services.ejb.EJBAdmin.commitLoad(EJBAdmin.java:1112)

at com.sap.engine.services.ejb.EJBAdmin.prepareStart(EJBAdmin.java:2428)

at com.sap.engine.services.deploy.server.application.StartTransaction.prepareCommon(StartTransaction.java:239)

at com.sap.engine.services.deploy.server.application.StartTransaction.prepare(StartTransaction.java:187)

at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:301)

at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesImpl(ParallelAdapter.java:327)

at com.sap.engine.services.deploy.server.application.ParallelAdapter.runInTheSameThread(ParallelAdapter.java:111)

at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesAndWait(ParallelAdapter.java:230)

at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:4700)

at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:4605)

at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:4578)

at com.sap.engine.services.deploy.server.DeployServiceImplp4_Skel.dispatch(DeployServiceImplp4_Skel.java:1163)

at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:304)

at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:193)

at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:122)

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.jndi.persistent.exceptions.NamingException: Exception during lookup operation of object with name ejbContainer/cmp/tx/asianpaints.com/bsApp/J2EDB, cannot resolve object reference. [Root exception is com.sap.engine.services.connector.exceptions.BaseResourceException: ConnectionFactory "J2EDB" does not exist. Possible reasons: the connector in which ConnectionFactory "J2EDB" is defined is not deployed or not started.]

at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:529)

at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:639)

at javax.naming.InitialContext.lookup(InitialContext.java:347)

at javax.naming.InitialContext.lookup(InitialContext.java:347)

at com.sap.engine.services.ejb.entity.pm.PersistenceManager.initDataSource(PersistenceManager.java:185)

... 21 more

Caused by: com.sap.engine.services.connector.exceptions.BaseResourceException: ConnectionFactory "J2EDB" does not exist. Possible reasons: the connector in which ConnectionFactory "J2EDB" is defined is not deployed or not started.

at com.sap.engine.services.connector.ResourceObjectFactory.getObjectInstance(ResourceObjectFactory.java:207)

at com.sap.engine.system.naming.provider.ObjectFactoryBuilderImpl._getObjectInstance(ObjectFactoryBuilderImpl.java:72)

at com.sap.engine.system.naming.provider.ObjectFactoryBuilderImpl.access$100(ObjectFactoryBuilderImpl.java:31)

at com.sap.engine.system.naming.provider.ObjectFactoryBuilderImpl$DispatchObjectFactory.getObjectInstance(ObjectFactoryBuilderImpl.java:210)

at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:280)

at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:414)

... 25 more

-


Pls help as im waiting for your reply...

regards,

Amey

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi, Amey,

My guess is that you have not defined your DataSource properly...

Could you copy-paste the code that defines your DataSource (or alias, respectively)?

Regards,

Yordan

Amey-Mogare
Contributor
0 Kudos

Hi Yordan,

This is where im specifying my datasource in persistent.xml file(that is in "General tab" of EJB DC)

-


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE persistent-ejb-map SYSTEM "persistent.dtd">

<persistent-ejb-map>

<locking

type="Table"/>

<db-properties>

<data-source-name>J2EDB</data-source-name>

</db-properties>

<entity-beans>

<entity-bean>

<ejb-name>OEMBean</ejb-name>

-


Former Member
0 Kudos

Hi, Amey,

That seems OK. Assuming that you are using the system database, you must also deploy a DataSource alias (data-source-aliases.xml) with your application. The alias name must be the same as your DataSource name in the persistent.xml file.

See an example [HERE|http://help.sap.com/saphelp_nw70/helpdata/en/49/b21d2b6d8b2649bfa1516f4af69371/frameset.htm].

Hope that helps!

Regards,

Yordan

Amey-Mogare
Contributor
0 Kudos

Hi Yordan,

Thanks alot for that tip !!!

It worked fine... thank you so much...

I have one doubt...When i created alias, it gave me message saying that this alias can only be used for test application only, not for productive use.

What does that mean? It wont work when i move my application to production??

regards,

Amey

Former Member
0 Kudos

>

> I have one doubt...When i created alias, it gave me message saying that this alias can only be used for test application only, not for productive use.

>

> What does that mean? It wont work when i move my application to production??

Hi, Amey,

I am not sure what does that mean. I guess that the name you are using for the DataSource alias might cause some naming conflict or something... Try using a different name for your DataSource alias.

Hope that helps!

Regards,

Yordan