Datasource configuration problem with WSAD 5.1.2 and OracleOCICo

Discussions

General J2EE: Datasource configuration problem with WSAD 5.1.2 and OracleOCICo

  1. Hello,
    I am having trouble to configure OracleOCIConnection as a datasource with WSAD 5.1.2.


    I am trying to test the OracleOCIConnection pool with following environment.
     Platform:Websphere Application Developer 5.1.2
    Oracle 10 g with oracle OCI driver supplied with 10g(I have added classes12.jar to the server ext dir class path.)

    Following is the problem.

    I tried to configure a datasource (type 5)using the server's datasource configuration wizard.
    Following was the configuration.
    JDBC provider ImplementaionClass: oracle.jdbc.pool.OracleOCIConnectionPool.
    For this jdbc provider,I configured a type 5.0 datasource with properties(User=XX,Password=XX and URL=jdbc:oracle:oci@ TNS_STRING ).

    I deployed our web application on the test Server configuration(server 5.1) and at at server startup I was getting an exception something similar to following.
    "DSRA9002E: ResourceException with error code NOT_A_1_PHASE_DS: com.ibm.ws.exception.WsException: DSRA8101E
    ".

    After some googling, I found out that there are 2 types of datasources

    1:Datasource of type 4.0 which needs to implement DataSource interface

    2:And dataSource 5.0 , complient with j2ee 1.3 and above, which implements ConnectionPoolDataSource or XADataSource
    So as the implementaion class I need to use for datasource (OracleOCIConnection ) only implements Datasource interfce, I changed the configuration of DataSource to type 4.

    This took care of the above error but then I got an exception saying that Can not use Servlet 2.3 or more servlet with datasource 4.0.
    This was due to the fact that my application was set to confirm to j2ee 1.3.I chaged the setting and recompiled and re deployed the application.

    Now I am one step further .Still not there though :-((
    But getting following exception.

    [28/06/05 15:54:12:405 CEST] 3000ee9c DataSourcePro W CONM7002W: The system cannot find the property Password on class oracle.jdbc.pool.OracleOCIConnectionPool
    [28/06/05 15:54:12:436 CEST] 3000ee9c DataSourcePro W CONM7002W: The system cannot find the property User on class oracle.jdbc.pool.OracleOCIConnectionPool
    [28/06/05 15:54:12:468 CEST] 3000ee9c DataSourcePro E CONM7005E: The class (oracle.jdbc.pool.OracleOCIConnectionPool) does not implement the javax.sql.ConnectionPoolDataSource or the javax.sql.XADataSource interface.
    Now I am not sure whts happening.Because as per WSAd documentation, you can use datasource type 4.0 with WSAD 5.1 servers by configuring them as type 4 datasource.Then why am I getting this exception which says OracleOCIConnectionPool does not implement
    javax.sql.ConnectionPoolDataSource or the javax.sql.XADataSource interface.The meanoing of type 4.0 datasource is that it does notimplement these interfaces but instead implements just Datasource interface.

    Any body has done this configuration?

    Regards,
    Shirish
  2. hello All,
    I corrected one more problem.I was setting the properties User and Password on datasource.This was the reason I had the error
    "The system cannot find the property Password on class oracle.jdbc.pool.OracleOCIConnectionPool"



    But with WSAD actually the JAAS authentication is used to set those values.So I have configured JAAS authetication and the user name and password errors are gone now.Following is the exception i get.

    [30/06/05 17:13:25:914 CEST] 30014067 SystemErr R java.sql.SQLException: CONM7005E: The class (oracle.jdbc.pool.OracleOCIConnectionPool) does not implement the javax.sql.ConnectionPoolDataSource or the javax.sql.XADataSource interface.
    [30/06/05 17:13:25:914 CEST] 30014067 SystemErr R at com.ibm.ejs.cm.DataSourceProperties.getConnectionPoolDataSource(DataSourceProperties.java:118)
    [30/06/05 17:13:25:914 CEST] 30014067 SystemErr R at com.ibm.ejs.cm.portability.PortabilityLayerImpl.getDataSource(PortabilityLayerImpl.java:873)

    So still no clue why a Datasource configured as v4.0 datasource needs to implement those interfaces.