Yeah no problem what so ever. The following works for BMP as well as CMP
beans.

Basically, all you need to do is specify different datasource resource
references in your ejb-jar.xml and jboss.xml files, e.g.:

ejb-jar.xml -----------------------------------------------------

    <entity>
      <ejb-name>Bean1</ejb-name>
      <home>Bean1Home</home>
      <remote>Bean1</remote>
      <ejb-class>Bean1Bean</ejb-class>
      <persistence-type>Bean</persistence-type>
      <prim-key-class>java.lang.String</prim-key-class>
      <reentrant>False</reentrant>
      <resource-ref>
         <res-ref-name>jdbc/DB1</res-ref-name>
         <res-type>javax.sql.DataSource</res-type>
         <res-auth>Container</res-auth>
      </resource-ref>
    </entity>
    <entity>
      <ejb-name>Bean2</ejb-name>
      <home>Bean2Home</home>
      <remote>Bean2</remote>
      <ejb-class>Bean2Bean</ejb-class>
      <persistence-type>Bean</persistence-type>
      <prim-key-class>java.lang.String</prim-key-class>
      <reentrant>False</reentrant>
      <resource-ref>
         <res-ref-name>jdbc/DB2</res-ref-name>
         <res-type>javax.sql.DataSource</res-type>
         <res-auth>Container</res-auth>
      </resource-ref>
    </entity>

jboss.xml ------------------------------------------------------

    <resource-managers>
         <resource-manager
res-class="org.jboss.ejb.deployment.JDBCResource">
             <res-name>jdbc/DB1</res-name>
             <res-jndi-name>java:/OracleDBPoolName</res-jndi-name>
         </resource-manager>
         <resource-manager
res-class="org.jboss.ejb.deployment.JDBCResource">
             <res-name>jdbc/DB2</res-name>
             <res-jndi-name>java:/SybaseDBPoolName</res-jndi-name>
         </resource-manager>
     </resource-managers>

     <entity>
           <ejb-name>Bean1</ejb-name>
           <jndi-name>app/Bean1</jndi-name>
           <configuration-name></configuration-name>
           <resource-ref>
               <res-ref-name>jdbc/DB1</res-ref-name>
               <resource-name>jdbc/access1</resource-name>
           </resource-ref>
      </entity>
     <entity>
           <ejb-name>Bean2</ejb-name>
           <jndi-name>app/Bean2</jndi-name>
           <configuration-name></configuration-name>
           <resource-ref>
               <res-ref-name>jdbc/DB2</res-ref-name>
               <resource-name>jdbc/access2</resource-name>
           </resource-ref>
      </entity>


----- Original Message -----
From: "Carles Pi-Sunyer" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, April 19, 2001 7:25 PM
Subject: [JBoss-user] different datasources for differnet entity beans


> Is it possible to configure the datasource that an
> entity bean uses on a per-bean basis?
>
> I have entity beans (container managed) that represent
> tables in different databases. I would like to avoid
> packaging them in different jar files. Is there any
> way to do this?
>
> Thanks,
> Carles
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Auctions - buy the things you want at great prices
> http://auctions.yahoo.com/
>
> _______________________________________________
> JBoss-user mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-user
>

_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to