When I am trying to deploy my ear file. I am getting the error mentioned below. I have made
a connection pool and 3 data sources at console. Is there a problem with the way I have
defined them. Please do let me know.
Thank You
Ronak Parekh
Connection Pools:
Name : oraclePool
URL :
jdbc:weblogic:builder
Driver classname : weblogic.jdbc.oci.Driver
Properties(key=values): servername=ronakserver
user=sempsys
dataSourceName=oraclePool
databaseName=builder
Password : sempsys
Data Sources:
Name : Gangster
JNDI Name: Gangster
Pool Name: oraclePool
Name : Organization
JNDI Name: Organization
Pool Name: oraclePool
Name : Job
JNDI Name: Job
Pool Name: oraclePool
My Error is:
preparing application app54 on ronserver
prepared application app54 on ronserver
activating application app54 on ronserver
Exception caught for task Activate application app54 on ronserver: activate failed
forsempire_bc.jar
Module, sempire_bc.jar, reported error: Exception activating module:
EJBModule(sempire_bc.jar,status=PREPARED)
Unable to deploy
EJB: OrganizationEJB from sempire_bc.jar:
weblogic.ejb20.WLDeploymentException: The DataSource with the JNDI name:
java:comp/env/ejb/Organization could not be located. Please ensure that the DataSource has
been deployed successfully and that the JNDI name in your EJB Deployment descriptor is
correct.
at
weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.setup(RDBMSPersistenceManager.java:130)
at weblogic.ejb20.manager.BaseEntityManager.setupPM(BaseEntityManager.java:214)
at weblogic.ejb20.manager.BaseEntityManager.setup(BaseEntityManager.java:186)
at weblogic.ejb20.manager.DBManager.setup(DBManager.java:161)
at
weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrivenBeanInfoImpl.java:936)
at weblogic.ejb20.deployer.EJBDeployer.activate(EJBDeployer.java:1302)
at weblogic.ejb20.deployer.EJBModule.activate(EJBModule.java:342)
at
weblogic.j2ee.J2EEApplicationContainer.activateModule(J2EEApplicationContainer.java:1534)
at
weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:991)
at
weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:978)
at
weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:1104)
at
weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:724)
at
weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
failed application app54 on ronserver
My ejb-jar.xml file is:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC
"-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
"http://java.sun.com/dtd/ejb-jar_2_0.dtd">
<ejb-jar>
<display-name>Business Component CMP 2.0</display-name>
<enterprise-beans>
<entity>
<display-name>Gangster Entity Bean</display-name>
<ejb-name>GangsterEJB</ejb-name>
<local-home>com.sempire.builder.business_component.GangsterHome</local-home>
<local>com.sempire.builder.business_component.Gangster</local>
<ejb-class>com.sempire.builder.business_component.GangsterBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<cmp-field><field-name>iD</field-name></cmp-field>
<cmp-field><field-name>name</field-name></cmp-field>
<cmp-field><field-name>nickname</field-name></cmp-field>
<cmp-field><field-name>badness</field-name></cmp-field>
<primkey-field>iD</primkey-field>
<env-entry>
<env-entry-name>GANGSTER</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>Gangster</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>oraclePool</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>oraclePool</env-entry-value>
</env-entry>
<resource-ref>
<res-ref-name>jdbc/Gangster</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</entity>
<entity>
<display-name>Organization Entity Bean</display-name>
<ejb-name>OrganizationEJB</ejb-name>
<local-home>com.sempire.builder.business_component.OrganizationHome</local-home>
<local>com.sempire.builder.business_component.Organization</local>
<ejb-class>com.sempire.builder.business_component.OrganizationBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<cmp-field><field-name>iD</field-name></cmp-field>
<cmp-field><field-name>name</field-name></cmp-field>
<cmp-field><field-name>description</field-name></cmp-field>
<primkey-field>iD</primkey-field>
<env-entry>
<env-entry-name>ORGANIZATION</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>Organization</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>oraclePool</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>oraclePool</env-entry-value>
</env-entry>
<resource-ref>
<res-ref-name>jdbc/Organization</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</entity>
<entity>
<display-name>Job Entity Bean</display-name>
<ejb-name>JobEJB</ejb-name>
<local-home>com.sempire.builder.business_component.JobHome</local-home>
<local>com.sempire.builder.business_component.Job</local>
<ejb-class>com.sempire.builder.business_component.JobBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<cmp-field><field-name>iD</field-name></cmp-field>
<cmp-field><field-name>name</field-name></cmp-field>
<cmp-field><field-name>score</field-name></cmp-field>
<cmp-field><field-name>setupCost</field-name></cmp-field>
<primkey-field>iD</primkey-field>
<env-entry>
<env-entry-name>Job</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>Job</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>oraclePool</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>oraclePool</env-entry-value>
</env-entry>
<resource-ref>
<res-ref-name>jdbc/Job</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</entity>
</enterprise-beans>
<relationships>
<ejb-relation>
<ejb-relation-name>organization-memberGangsters</ejb-relation-name>
<ejb-relationship-role>
<ejb-relationship-role-name>organization--
-memberGangsters</ejb-relationship-role-name>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>OrganizationEJB</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>memberGangsters</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>memberGangsters--
-organization</ejb-relationship-role-name>
<multiplicity>Many</multiplicity>
<cascade-delete/>
<relationship-role-source>
<ejb-name>GangsterEJB</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>organization</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
<ejb-relation>
<ejb-relation-name>gangsters-jobs</ejb-relation-name>
<ejb-relationship-role>
<ejb-relationship-role-name>gangsters---jobs</ejb-relationship-role-name>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>GangsterEJB</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>jobs</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>jobs---gangsters</ejb-relationship-role-name>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>JobEJB</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>gangsters</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
<ejb-relation>
<ejb-relation-name>organization-theBoss</ejb-relation-name>
<ejb-relationship-role>
<ejb-relationship-role-name>organization--
-theBoss</ejb-relationship-role-name>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>OrganizationEJB</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>theBoss</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>theBoss--
-organization</ejb-relationship-role-name>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>GangsterEJB</ejb-name>
</relationship-role-source>
</ejb-relationship-role>
</ejb-relation>
</relationships>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>GangsterEJB</ejb-name>
<method-name>*</method-name>
</method>
<method>
<ejb-name>OrganizationEJB</ejb-name>
<method-name>*</method-name>
</method>
<method>
<ejb-name>JobEJB</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
My weblogic-ejb-jar.xml is:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-ejb-jar PUBLIC
'-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB//EN'
'http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd'>
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>GangsterEJB</ejb-name>
<entity-descriptor>
<persistence>
<persistence-use>
<type-identifier>WebLogic_CMP_RDBMS</type-identifier>
<type-version>6.0</type-version>
<type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
</persistence-use>
</persistence>
</entity-descriptor>
<reference-descriptor>
<resource-description>
<res-ref-name>jdbc/Gangster</res-ref-name>
<jndi-name>oraclePool</jndi-name>
</resource-description>
</reference-descriptor>
<jndi-name>Gangster</jndi-name>
</weblogic-enterprise-bean>
<weblogic-enterprise-bean>
<ejb-name>OrganizationEJB</ejb-name>
<entity-descriptor>
<persistence>
<persistence-use>
<type-identifier>WebLogic_CMP_RDBMS</type-identifier>
<type-version>6.0</type-version>
<type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
</persistence-use>
</persistence>
</entity-descriptor>
<reference-descriptor>
<resource-description>
<res-ref-name>jdbc/Organization</res-ref-name>
<jndi-name>oraclePool</jndi-name>
</resource-description>
</reference-descriptor>
<jndi-name>Organization</jndi-name>
</weblogic-enterprise-bean>
<weblogic-enterprise-bean>
<ejb-name>JobEJB</ejb-name>
<entity-descriptor>
<persistence>
<persistence-use>
<type-identifier>WebLogic_CMP_RDBMS</type-identifier>
<type-version>6.0</type-version>
<type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
</persistence-use>
</persistence>
</entity-descriptor>
<reference-descriptor>
<resource-description>
<res-ref-name>jdbc/Job</res-ref-name>
<jndi-name>oraclePool</jndi-name>
</resource-description>
</reference-descriptor>
<jndi-name>Job</jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>
My weblogic-cmp-rdbms-jar.xml file is:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-rdbms-jar PUBLIC
'-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB RDBMS Persistence//EN'
'http://www.bea.com/servers/wls700/dtd/weblogic-rdbms20-persistence-700.dtd'>
<weblogic-rdbms-jar>
<weblogic-rdbms-bean>
<ejb-name>GangsterEJB</ejb-name>
<data-source-name>java:comp/env/ejb/Gangster</data-source-name>
<table-map>
<table-name>GANGSTER</table-name>
<field-map>
<cmp-field>iD</cmp-field>
<dbms-column>ID</dbms-column>
</field-map>
<field-map>
<cmp-field>name</cmp-field>
<dbms-column>NAME</dbms-column>
</field-map>
<field-map>
<cmp-field>nickname</cmp-field>
<dbms-column>NICKNAME</dbms-column>
</field-map>
<field-map>
<cmp-field>badness</cmp-field>
<dbms-column>BADNESS</dbms-column>
</field-map>
</table-map>
<weblogic-query>
<query-method>
<method-name>findAll</method-name>
<method-params></method-params>
</query-method>
</weblogic-query>
</weblogic-rdbms-bean>
<weblogic-rdbms-bean>
<ejb-name>OrganizationEJB</ejb-name>
<data-source-name>java:comp/env/ejb/Organization</data-source-name>
<table-map>
<table-name>ORGANIZATION</table-name>
<field-map>
<cmp-field>iD</cmp-field>
<dbms-column>ID</dbms-column>
</field-map>
<field-map>
<cmp-field>name</cmp-field>
<dbms-column>NAME</dbms-column>
</field-map>
<field-map>
<cmp-field>description</cmp-field>
<dbms-column>DESCRIPTION</dbms-column>
</field-map>
</table-map>
<weblogic-query>
<query-method>
<method-name>findAll</method-name>
<method-params></method-params>
</query-method>
</weblogic-query>
</weblogic-rdbms-bean>
<weblogic-rdbms-bean>
<ejb-name>JobEJB</ejb-name>
<data-source-name>java:comp/env/ejb/Job</data-source-name>
<table-map>
<table-name>JOB</table-name>
<field-map>
<cmp-field>iD</cmp-field>
<dbms-column>ID</dbms-column>
</field-map>
<field-map>
<cmp-field>name</cmp-field>
<dbms-column>NAME</dbms-column>
</field-map>
<field-map>
<cmp-field>score</cmp-field>
<dbms-column>SCORE</dbms-column>
</field-map>
<field-map>
<cmp-field>setupCost</cmp-field>
<dbms-column>SETUPCOST</dbms-column>
</field-map>
</table-map>
<weblogic-query>
<query-method>
<method-name>findAll</method-name>
<method-params></method-params>
</query-method>
</weblogic-query>
</weblogic-rdbms-bean>
<weblogic-rdbms-relation>
<relation-name>organization-memberGangsters</relation-name>
<weblogic-relationship-role>
<relationship-role-name>memberGangsters--
-organization</relationship-role-name>
<relationship-role-map>
<column-map>
<foreign-key-column>iD</foreign-key-column>
<key-column>ID</key-column>
</column-map>
</relationship-role-map>
</weblogic-relationship-role>
</weblogic-rdbms-relation>
<weblogic-rdbms-relation>
<relation-name>gangsters-jobs</relation-name>
<table-name>JOBS</table-name>
<weblogic-relationship-role>
<relationship-role-name>gangsters---jobs</relationship-role-name>
<relationship-role-map>
<column-map>
<foreign-key-column>iD</foreign-key-column>
<key-column>ID</key-column>
</column-map>
</relationship-role-map>
</weblogic-relationship-role>
<weblogic-relationship-role>
<relationship-role-name>jobs---gangsters</relationship-role-name>
<relationship-role-map>
<column-map>
<foreign-key-column>iD</foreign-key-column>
<key-column>ID</key-column>
</column-map>
</relationship-role-map>
</weblogic-relationship-role>
</weblogic-rdbms-relation>
<weblogic-rdbms-relation>
<relation-name>organization-theBoss</relation-name>
<weblogic-relationship-role>
<relationship-role-name>organization---theBoss</relationship-role-name>
<relationship-role-map>
<column-map>
<foreign-key-column>iD</foreign-key-column>
<key-column>ID</key-column>
</column-map>
</relationship-role-map>
</weblogic-relationship-role>
</weblogic-rdbms-relation>
</weblogic-rdbms-jar>