3 Replies Latest reply on May 6, 2002 10:57 AM by Ron Jawanda

    JBoss 3.0 RC1 Oracle datasource

    Rick Chatham Newbie

      Receiving the following error when deploying EJBs...

      ERROR [org.jboss.ejb.EntityContainer] Exception in service lifecyle operation: create
      org.jboss.deployment.DeploymentException: Error: can't find data source: ChmPortalDS; - nested throwable is: javax.naming.NameNotFoundException: ChmPortalDS not bound
      javax.naming.NameNotFoundException: ChmPortalDS not bound


      1. I placed the Oracle classes.jar into the jboss/lib directory

      2. Downloaded the lastest oracle-service.xml (v 1.2) from http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jboss/jbosscx/src/etc/example-config/

      3. Updated the oracle-service.xml for my new datasource ChmPortalDS with appropiate server and login attributes

      4. Added the <application-policy name = "OracleDbRealm"> ... to the login-config.xml file

      5. Can see the jndi name in JNDIView

      java: Namespace

      +- XAConnectionFactory (class: org.jboss.mq.SpyXAConnectionFactory)
      +- SecurityProxyFactory (class: org.jboss.security.SubjectSecurityProxyFactory)
      +- ChmPortalDS (class: org.jboss.resource.adapter.jdbc.JDBCDataSource)
      +- DefaultJMSProvider (class: org.jboss.jms.jndi.JBossMQProvider)


      What am I missing?

        • 1. Re: JBoss 3.0 RC1 Oracle datasource
          David Jencks Master

          Check your startup log -- is there any chance the ejbs are deployed before the oracle-service.xml?

          If so try again with the oracle-service.xml in deploy, but not your app. After oracle-service is deployed, deploy your app. If it works, wrong order is the problem. The easiest solution is probably to put your app in another directory, say server/user, and list this directory in the deployment scanner url list AFTER ./deploy. You can also modify your container-configurations to depend on the connection manager mbean, but this may be a bit complicated.

          Let us know if it works.

          • 3. Re: JBoss 3.0 RC1 Oracle not bound
            Ron Jawanda Novice

            I can't get the jndi name to register.
            I also can't read the link above.
            Any change someone can describe to me how to setup oracle with jboss RC1

            I did this

            Placed the oracle jar files in the lib directory

            login-config.xml
            and oracle9i-service.xml
            are below.
            I had oracle 9i working with jboss3 beta.

            Added this to login-config.xml
            <application-policy name = "OracleDbRealm">

            <login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule"
            flag = "required">
            <module-option name = "principal">system</module-option>
            <module-option name = "userName">system</module-option>
            <module-option name = "password">manager</module-option>
            <module-option name = "managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=Oracle9iDS</module-option>
            </login-module>

            </application-policy>



            This is my oracle9i-service.xml
            <?xml version="1.0" encoding="UTF-8"?>

            <!-- ===================================================================== -->
            <!-- -->
            <!-- JBoss Server Configuration -->
            <!-- -->
            <!-- ===================================================================== -->

            <!-- $Id: hsqldb-service.xml,v 1.2 2002/04/14 04:31:56 d_jencks Exp $ -->



            <!-- ==================================================================== -->
            <!-- New ConnectionManager setup for default hsql dbs -->
            <!-- ==================================================================== -->


            <!--make the rar deploy! hack till better deployment-->
            jboss.jca:service=RARDeployer


            <depends optional-attribute-name="ManagedConnectionFactoryName">
            <!--embedded mbean-->

            <!--hack-->
            <depends optional-attribute-name="OldRarDeployment">jboss.jca:service=RARDeployment,name=Minerva JDBC LocalTransaction ResourceAdapter
            jboss:service=Oracle

            <!--real attributes-->


            <config-property>
            <config-property-name>ConnectionURL</config-property-name>
            <config-property-type>java.lang.String</config-property-type>
            <config-property-value>jdbc:oracle:thin:@bmdrjawanda:1521:devdwh</config-property-value>
            </config-property>
            <config-property>
            <config-property-name>DriverClass</config-property-name>
            <config-property-type>java.lang.String</config-property-type>
            <config-property-value>oracle.jdbc.driver.OracleDriver</config-property-value>
            </config-property>
            <config-property>
            <config-property-name>UserName</config-property-name>
            <config-property-type>java.lang.String</config-property-type>
            <config-property-value>developer</config-property-value>
            </config-property>
            <config-property>
            <config-property-name>Password</config-property-name>
            <config-property-type>java.lang.String</config-property-type>
            <config-property-value>developer</config-property-value>
            </config-property>


            Oraclejndi


            <depends optional-attribute-name="ManagedConnectionPool">
            <!--embedded mbean-->


            0
            50
            5000
            15
            <!--criteria indicates if Subject (from security domain) or app supplied
            parameters (such as from getConnection(user, pw)) are used to distinguish
            connections in the pool. Choices are
            ByContainerAndApplication (use both),
            ByContainer (use Subject),
            ByApplication (use app supplied params only),
            ByNothing (all connections are equivalent, usually if adapter supports
            reauthentication)-->
            ByContainer


            <depends optional-attribute-name="CachedConnectionManager">jboss.jca:service=CachedConnectionManager
            java:/jaas/OracleDbRealm
            java:/TransactionManager



            <!-- Moved to end to test anonymous depends -->


            1521
            true
            devdwh
            false







            I don't get any exceptions but in my http://localhost:8082 I don't see my jndi name (oracle) registered anywhere.

            I do see this during startup

            10:53:04,710 INFO [MainDeployer] Successfully completed deployment of package:
            file:/C:/data/swi/jboss-3.0.0RC1_tomcat-4.0.3/server/default/deploy/tomcat4-serv
            ice.xml
            10:53:04,725 INFO [MainDeployer] Starting deployment of package: file:/C:/data/
            swi/jboss-3.0.0RC1_tomcat-4.0.3/server/default/deploy/oracle9i-service.xml
            10:53:05,569 WARN [ServiceController] jboss.jca:service=LocalTxDS,name=Oracle9i
            DS does not implement any Service methods
            10:53:06,741 INFO [JBossManagedConnectionPool] Creating
            10:53:06,756 INFO [JBossManagedConnectionPool] Created
            10:53:06,756 INFO [JBossManagedConnectionPool] Starting
            10:53:06,772 INFO [JBossManagedConnectionPool] Started
            10:53:06,772 INFO [MainDeployer] Successfully completed deployment of package:
            file:/C:/data/swi/jboss-3.0.0RC1_tomcat-4.0.3/server/default/deploy/oracle9i-ser
            vice.xml

            When I deploy something I get this

            10:57:12,631 INFO [MainDeployer] Starting deployment of package: file:/C:/data/
            swi/jboss-3.0.0RC1_tomcat-4.0.3/server/default/deploy/pubs.jar
            10:57:12,803 INFO [EjbModule] Creating
            10:57:12,835 INFO [EjbModule] Deploying PubsBean
            10:57:12,913 ERROR [EntityContainer] Exception in service lifecyle operation: cr
            eate
            org.jboss.deployment.DeploymentException: Oracle9iDS not bound
            at org.jboss.ejb.plugins.jaws.metadata.JawsApplicationMetaData.create(Ja
            wsApplicationMetaData.java:137)
            at org.jboss.ejb.plugins.jaws.metadata.JawsXmlFileLoader.load(JawsXmlFil
            eLoader.java:85)
            at org.jboss.ejb.plugins.jaws.jdbc.JDBCCommandFactory.(JDBCCommand
            Factory.java:139)
            at org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.create(JAWSPersiste
            nceManager.java:102)