mehrere Datenbanken mit JBoss 4.2 und EJB3

Hi,
der Normalfall ist relativ easy. Eine Applikation, im JBoss deployed, greift über die DS Definition auf die DB zu.
<code>
<?xml version="1.0" encoding="UTF-8"?>
<persistence>
<persistence-unit name="ParisPlusDefaultUnit">
<jta-data-source>java:/PPDefaultDS</jta-data-source>
</persistence-unit>
</persistence>
</code>
Nun habe ich aber den Fall, dass ich eine 2. DB benötige. Die passende xxxDS.xml ist angelegt und die persistence.xml entsprechend angepasst.
<code>
<?xml version="1.0" encoding="UTF-8"?>
<persistence>
<persistence-unit name="ParisPlusDefaultUnit">
<jta-data-source>java:/PPDefaultDS</jta-data-source>
</persistence-unit>
<persistence-unit name="ParisPlusHostExtensionUnit">
<jta-data-source>java:/HostExtensionDS</jta-data-source>
<class>ProduktverwaltungEntity</class>
</persistence-unit>
</persistence>
</code>
Allerding scheint das so nicht auszureichen. Zumindest wirft der Server folgende Exception beim Zugriff auf die Bean
javax.naming.NamingException: Could not dereference object

Als Info beim deploy gibt der JBoss noch folgendes aus :

INFO [Ejb3Configuration] [PersistenceUnit: ParisPlusHostExtensionUnit] no META-INF/orm.xml found

Hat jemand schon 2 oder mehere DBs unter EJB3 mit JBoss zum laufen gebracht ?
Für Tipps wäre ich dankbar.
 
Ich habe eine Lösung gefunden. Evtl benötigt diese ja jemand mal...

Erst die DB angeben die allgemein gilt, dann die, die speziell für einige Beans gelten.
Mit <exclude-unlisted-classes/> schliesst man die nicht aufgeführten Beans aus.
Damit wird zwar die ProduktverwaltungEntity erst mal auf die default DB gesetzt, dann allerdings mit der richtigen überschrieben.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<persistence>
   <persistence-unit name="DefaultUnit">
      <jta-data-source>java:/PPDefaultDS</jta-data-source>
   </persistence-unit>
   <persistence-unit name="HostExtensionUnit">
      <jta-data-source>java:/HostExtensionDS</jta-data-source>
      <class>ProduktverwaltungEntity</class>
      <exclude-unlisted-classes/>
   </persistence-unit>
</persistence>

Eigentlich sollte es auch diese Notation geben :

Code:
<?xml version="1.0" encoding="UTF-8"?>
<persistence>
   <persistence-unit name="DefaultUnit">
      <jta-data-source>java:/PPDefaultDS</jta-data-source>
      <exclude>ProduktverwaltungEntity</exclude>
   </persistence-unit>
</persistence>

Leider ignoriert der JBoss das <exclude>

Falls jemand eine bessere Lösung hat wäre ich dankbar.
 
Zurück