[jboss-user] [EJB/JBoss] - two units in persistence.xml

maisoft do-not-reply at jboss.com
Wed Aug 22 12:48:12 EDT 2007


Hi guys!

I have a persistence.xml file with two persistence unit:

<persistence-unit name="CPTAdminPU" transaction-type="RESOURCE_LOCAL">
    org.hibernate.ejb.HibernatePersistence

    <!-- the datasource (that must be deployed on JBoss) -->
    <non-jta-data-source>java:CPTAdminDB</non-jta-data-source>

    <!-- entity list -->
    com.gsk.mdr.cpt.admin.entity.ProgramEntity
    com.gsk.mdr.cpt.admin.entity.UserEntity

    
      <!-- Hibernate settings -->
      
      
      
      
      
    
  </persistence-unit>


  <!--
    -  ProjectP3IPU persistence unit used by the JBoss application.
    -->
  <persistence-unit name="CPTProjectP3IPU" transaction-type="RESOURCE_LOCAL">
    org.hibernate.ejb.HibernatePersistence

    <!-- the datasource (that must be deployed on JBoss) -->
    <non-jta-data-source>java:CPTProjectP3IDS</non-jta-data-source>

    <!-- entity list -->
    com.gsk.mdr.cpt.admin.entity.ProjectP3I

    
      <!-- Hibernate settings -->
      
      
      
      
      
    
  </persistence-unit>

the two units maps to this datasources:

   <local-tx-datasource>
      <jndi-name>CPTAdminDB</jndi-name>
      <connection-url>**********************</connection-url>
      <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
      <user-name>*********</user-name>
      ********
      <min-pool-size>5</min-pool-size>
      <max-pool-size>20</max-pool-size>
   </local-tx-datasource>

   <local-tx-datasource>
    <jndi-name>CPTProjectP3IDS</jndi-name>
    <connection-url>********************</connection-url>
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>***************</user-name>
    **********
    <min-pool-size>10</min-pool-size>
    <max-pool-size>500</max-pool-size>

    <!-- Uses the pingDatabase method to check a connection is still valid before handing it out from the pool -->
    <valid-connection-checker-class-name>
      org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker
    </valid-connection-checker-class-name>

    <!-- Checks the Oracle error codes and messages for fatal errors -->
    <exception-sorter-class-name>
      org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter
    </exception-sorter-class-name>
  </local-tx-datasource>

My code uses the first persistence unit until i have to validate p3i id, and at this time i try to create an EntityManagerFactory for the second unit:

AtlasProgramIDValidator.java line 35:  
emf = PersistenceManager.getInstance().getEntityManagerFactory("CPTProjectP3IPU");

but i obtain this error:

org.hibernate.HibernateException: Missing table: CPT_ACCESS
 at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1080)
 at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:116)
 at org.hibernate.impl.SessionFactoryImpl.(SessionFactoryImpl.java:317)
 at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
 at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:713)
 at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:121)
 at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:51)
 at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:33)
 at com.gsk.mdr.cpt.admin.util.PersistenceManager.getEntityManagerFactory(PersistenceManager.java:62)
 at com.gsk.mdr.cpt.admin.validator.AtlasProgramIDValidator.validate(AtlasProgramIDValidator.java:35)

But the CPT_ACCESS table is on the first unit, is the table to which is mapped this class
com.gsk.mdr.cpt.admin.entity.UserEntity

Can anyone help me ??????

---------------------------------------------------------------
Office ext.:+39 045 821 8523
Office int.: 718 8523 
e-mail: luca.2.maistrello at gsk.com 


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4076973#4076973

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4076973



More information about the jboss-user mailing list