On Jun 18, 2008, at 7:34 AM, Jaime Geovane Marcondes wrote:


Hello!

   OpenEJB is amazing to boost the development of EJB3.0.

Quite a lot of effort goes into making things as easy as possible, so we definitely appreciate the positive feedback! Thank you!

   I tried to configure OpenEJB to run in Local Mode, for debugging
purposes. When it runs, the log shows:

javax.naming.NameNotFoundException: Name "jdbc_SecurityDS" not found

   I then tried to configure in ejb-jar.xml, but it didn't work.
   But the log shows:

2008-06-18 11:22:57,671 - INFO - Creating Resource(id=jdbc_SecurityDS)

   And then:
2008-06-18 11:22:58,125 - DEBUG - finished invoking method getMovement with
exception java.sql.SQLException: Name "jdbc_SecurityDS" not found.

   My openejb.conf:
<openejb>
        <Resource id="jdbc/SecurityDS" type="DataSource">
            JdbcDriver  oracle.jdbc.driver.OracleDriver
            JdbcUrl     jdbc:oracle:thin:@xxx.xx.xx.xxx:9921:source
            UserName    sec_usr
            Password    sec_usr
        </Resource>

        
        <Deployments dir="C:\projects\Services\classes\" />
        <Deployments jar="C:\temp\deploy\Services.jar" />
</openejb>


   My ejb-jar.xml:
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar>
        <enterprise-beans>
                <session>
                        <ejb-name>AccountService</ejb-name>
                        <remote>
                                
acme.com.accountservices.both.iface.AccountServices
                        </remote>
                        <ejb-class>
                                
acme.com.accountservices.server.ejb.AccountServicesBean
                        </ejb-class>
                        <session-type>Stateless</session-type>
                        <transaction-type>Container</transaction-type>
                        <resource-ref>
                                <res-ref-name>jdbc/SegurancaDS</res-ref-name>
                                <res-type>javax.sql.DataSource</res-type>
                                <auth-type>Container</auth-type>
                        </resource-ref>
                </session>
        </enterprise-beans>
</ejb-jar>

With a resource-ref like that in your ejb-jar.xml, you should be able to lookup the DataSource from inside the AccountServicesBean like so:

DataSource sequrancaDs = (DataSource) new InitialContext().lookup("java:comp/env/jdbc/SegurancaDs");

If that doesn't work, post your log output and the full stack trace and we probably figure out what's going on.

-David


Reply via email to