• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Jeanne Boyarsky
  • Ron McLeod
Sheriffs:
  • Paul Clapham
  • Liutauras Vilda
  • Devaka Cooray
Saloon Keepers:
  • Tim Holloway
  • Roland Mueller
Bartenders:

Need help with understanding the link between jndi and data source

 
Greenhorn
Posts: 26
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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 app10 on ronserver
prepared application app10 on ronserver
activating application app10 on ronserver
Exception caught for task Activate application app10 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: 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 app10 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>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>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>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>
 
Ranch Hand
Posts: 401
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
In your weblogic-ejb-jar.xml you have mapped the res-ref to the jndi name of oraclePool. It should be pointing to the jndi name of the data source (like Organization), not the pool.
 
And will you succeed? Yes you will indeed! (98 and 3/4 % guaranteed) - Seuss. tiny ad:
Smokeless wood heat with a rocket mass heater
https://woodheat.net
reply
    Bookmark Topic Watch Topic
  • New Topic