tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dain Sundstrom <>
Subject Re: Two datasources - one database
Date Tue, 05 Dec 2006 18:11:58 GMT
On Dec 5, 2006, at 12:22 AM, Per Newgro wrote:

> He noticed me to add the following lines to my ejb-jar.xml file
>>       <session>
>>          ...
>>             <resource-ref>
>>                 <res-ref-name>APPLDB</res-ref-name>
>>                 <res-type>javax.sql.DataSource</res-type>
>>                 <res-auth>Container</res-auth>
>>             </resource-ref>
>>             <resource-ref>
>>                 <res-ref-name>APPLDBnoTx</res-ref-name>
>>                 <res-type>javax.sql.DataSource</res-type>
>>                 <res-auth>Container</res-auth>
>>             </resource-ref>
>>       </session>
> One of his comments was:
>>  On a slightly different note, I'm curious why you'd have two
>>  connectors with the exact same configuration

To answer David's question, the first data source is connected to JTA  
and therefore the setAutocommit and commit methods shouldn't be  
called.  The second data source is a not connected to JTA and is  
using resource local transactions.

> And now i have my problem with exactly this issue. Access to the  
> working by lookup("java:comp/env/APPLDB"). But if i try to access  
> the no
> transaction datasource by lookup("java:comp/env/APPLDBnoTx") i get a
> javax.naming.NameNotFoundException: Name "java:comp/env/APPLDBnoTx"  
> not found.

I'm not sure on the details of how you do this with OpenEJB, but  
you'll need to declare another database connector and map your  
resource-ref to that connector.  Hopefully, David or someone else  
will fill in the details :)

> Is there an issue in ejb spec that i cant access same database by  
> usage of
> different datasources?

Nope.  What you are doing is perfectly legal and quite common.


View raw message