1 Reply Latest reply on Aug 3, 2010 3:49 PM by heyyou

    Unable to get EJB3 loaded on 5.0.1

    heyyou

      Hello,

       

      I've been working to get EJB3 application deployed to JBoss 5.0.1 server using DB2 as the database.

      This application deployed to 5.0.  This is a new 5.0.1 installation

      The environment is :

       

           JBoss:   JBoss 5.0.1, Sun JDK 1.6.0.19,  DB2 jcc drivers

           DB2:      DB2 9.5 fp 5

                        server/jdbc:    mydb.myco.com:50000/MyData

       

      From the JBoss system, I've installed the DB2 client and can successfully connect to the

      server and database from the JBoss system.

       

      The console messages are

      ------------------------------------------------------------------------------------------------------------------------------------------

      20:02:28,702 INFO  [JBossASKernel] Created KernelDeployment for: MyAppEJB3.jar

      20:02:28,702 INFO  [JBossASKernel] installing bean: jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3

      20:02:28,702 INFO  [JBossASKernel]   with dependencies:

      20:02:28,702 INFO  [JBossASKernel]   and demands:

      20:02:28,702 INFO  [JBossASKernel]     persistence.unit:unitName=MyApp.ear/MyAppEJB3.jar#MyAppEJB3

      20:02:28,717 INFO  [JBossASKernel]     jboss.ejb:service=EJBTimerService

      20:02:28,717 INFO  [JBossASKernel]   and supplies:

      20:02:28,717 INFO  [JBossASKernel]     jndi:/com/myco/my/app/ejb/MyDataSessionEJB

      20:02:28,717 INFO  [JBossASKernel]     jndi:MyApp/MyDataSessionEJB3/local

      20:02:28,717 INFO  [JBossASKernel]     Class:com.myco.my.app.ejb3.MyDataSessionLocal

      20:02:28,717 INFO  [JBossASKernel]     jndi:MyApp/MyDataSessionEJB3/local-com.myco.my.app.ejb3.MyDataSessionLocal

      20:02:28,717 INFO  [JBossASKernel] Added bean(jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3) to KernelDeployment of: MyAppEJB3.jar

      20:02:30,546 WARN  [JAXWSDeployerHookPreJSE] Cannot load servlet class: com.myco.my.app.web.MyDataServlet

      20:02:30,577 WARN  [JAXWSDeployerHookPreJSE] Cannot load servlet class: TestCacheServlet

      20:02:30,577 WARN  [JAXWSDeployerHookPreJSE] Cannot load servlet class: com.myco.my.app.web.Test

      20:02:32,655 INFO  [TomcatDeployment] deploy, ctxPath=/MyDataWeb

      20:02:32,952 INFO  [ProfileServiceBootstrap] Loading profile: ProfileKey@22a7c7[domain=default, server=default, name=all]

      20:02:32,952 ERROR [ProfileServiceBootstrap] Failed to load profile: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):

       

      DEPLOYMENTS MISSING DEPENDENCIES:

        Deployment "jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3" is missing the following dependencies:

          Dependency "<UNKNOWN jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3>" (should be in state "Described", but is actually in state "** UNRESOLVED Demands 'persistence.unit:unitName=MyApp.ear/MyAppEJB3.jar#MyAppEJB3' **")

        Deployment "jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3_endpoint" is missing the following dependencies:

          Dependency "jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3" (should be in state "Configured", but is actually in state "PreInstall")

        Deployment "persistence.unit:unitName=MyApp.ear/MyAppEJB3.jar#MyAppEJB3" is missing the following dependencies:

          Dependency "jboss.jca:name=MyDataDataSource,service=DataSourceBinding" (should be in state "Create", but is actually in state "** NOT FOUND Depends on 'jboss.jca:name=MyDataDataSource,service=DataSourceBinding' **")

       

      DEPLOYMENTS IN ERROR:

        Deployment "jboss.jca:name=MyDataDataSource,service=DataSourceBinding" is in error due to the following reason(s): ** NOT FOUND Depends on 'jboss.jca:name=MyDataDataSource,service=DataSourceBinding' **

        Deployment "<UNKNOWN jboss.j2ee:ear=MyApp.ear,jar=MyAppEJB3.jar,name=MyDataSessionEJB3,service=EJB3>" is in error due to the following reason(s): ** UNRESOLVED Demands 'persistence.unit:unitName=MyApp.ear/MyAppEJB3.jar#MyAppEJB3' **


      ------------------------------------------------------------------------------------------------------------------------------------------

       

      The JDBC configuration consists of :

       

      1. JDBC drivers installed into 'server/all/lib :

       

                     db2jcc.jar
                     db2jcc_license_cu.jar

       

      2.  server/all/deply/db2-ds.xml

      <datasources>
        <local-tx-datasource>
          <jndi-name>jdbc/MyDataDataSource</jndi-name>
           <connection-url>jdbc:db2://mydb.myco.com:50000/MyData</connection-url>
           <driver-class>com.ibm.db2.jcc.DB2Driver</driver-class>
          <user-name>myUser</user-name>
          <password>myPassword</password>
          <min-pool-size>20</min-pool-size>
          <max-pool-size>200</max-pool-size>
          <prepared-statement-cache-size>100</prepared-statement-cache-size>

       

            <metadata>
               <type-mapping>DB2</type-mapping>
            </metadata>
        </local-tx-datasource>

       

      </datasources>

       

      3.  server/all/conf/standardjbosscmp-jdbc.xml

       

      <jbosscmp-jdbc>

       

         <defaults>
            <datasource>java:/jdbc/MyDataDataSource</datasource
      >

       

       

      4.  MyApp.ear/MyAppEJB3.jar/META-INF/persistence.xml

      <persistence>
          <persistence-unit name="MyAppEJB3" transaction-type="JTA">

       

          <jta-data-source>java:/MyDataDataSource</jta-data-source>
          <class>com.myco.my.data.entities.Acct</class>
          <class>com.myco.my.data.entities.Type</class>
          <class>com.myco.my.data.entities.CustomerName</class>
          <class>com.myco.my.data.entities.CustomerType</class>

       

          <properties>
               <property name="hibernate.default_schema" value="MySchema"/>
                 <property name="hibernate.connection.username" value="myUser"/>
               <property name="hibernate.connection.password" value="myPasswd"/>
               <property name="hibernate.dialect" value="org.hibernate.dialect.DB2Dialect"/> 
              <property name="hibernate.show_sql" value="false" />
          </properties>

       

          </persistence-unit>
      </persistence>

       

      ----------------------

       

      I'm sure I'm overlooking something simple here, but just can't see to track it down.

        • 1. Re: Unable to get EJB3 loaded on 5.0.1
          heyyou

          The issue turns out to be that I specified "jdbc/" in front of my DataSource definition.

          After removing this from both files, it worked.

           

          Anyone have an explanation why this might be the case ?

          This worked in previous JBoss installation with the "jdbc/" ..