Hi,

I' m trying to use the Oracle SDO Java API in an EJB with container managed
transactions without success.
The problem raise with the following code:

InitialContext ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("jdbc/sitdemo");
Conn=ds.getConnection();
sdo = OraSpatialManager.getGeometryAdapter("SDO", "8.1.6", 
STRUCT.class, STRUCT.class, null,Conn);

This last call give me a null pointer when I use the DataSource at the 
ejb-location "jdbc/sitdemo" (I need it for CMT) while using the location
"jdbc/sitdemoCoreDS" I get the Oracle GeometryAdapter.
The problem seems to be that the DataSource received in this last case is of
type oracle.jdbc.driver.OracleConnection so it works. The Oracle SDO API
doesn't give a requirement for a specific kind of Connection, but the jdbc
connection returned from the DataSource at the ejb-location doesn't work.

This is my datasource:

<data-source
        class="com.evermind.sql.DriverManagerDataSource"
        name="sitdemo"
        location="jdbc/sitdemoCoreDS"
        xa-location="jdbc/xa/sitdemoXADS"
        ejb-location="jdbc/sitdemo"
        connection-driver="oracle.jdbc.OracleDriver"
        username="sitdemo"
        password="demosit"
        url="jdbc:oracle:thin:@127.0.0.1:1521:ORASITDB"
        inactivity-timeout="30"
/>

Thanks,

Luciano Montebove



Reply via email to