ClassCastException fro connection pool

hi
i'm trying to use IPlanet 6.5 connection poolin for oracle driver and using it for inserting blob in db(oracle91)
im getting the error as
java.lang.ClassCastException: com.netscape.server.jdbc.ConnectionProxy
the error is being thrown in this line
oracle.sql.BLOB tempBlob= (oracle.sql.BLOB)BLOB.createTemporary(objConnection,true,BLOB.DURATION_SESSION);
i tried using both classes111.zip and classes12.zip but of no diff,
if i use direct connection pooling my code works fine.
reply soon

Hi,
I guess the objConnection must be an instance of oracle.jdbc.OracleConnection.
How do you create objConnection ? Since temp LOB's are Oracle specific features, it needs an OracleConnection to work.
When a temp LOB is created, it tries to type cast the Connection instance to a OracleConnection and hence you are getting this error.
Regards
Elango.

Similar Messages

  • ClassCastException while asting ResultSet to OracleResultSet. Using weblogic connection pool

    Hi,
    I am using weblogic server 5.1 and connection pools for accessing Oracle database.
    We wanted to use BLOB in oracle and I coded the java class to insert data into BLOB
    field.
    When I code a sample calss without using weblogic pool, I do not have any problem.
    But when I use the weblogic connection pool, I get classcastException as described
    below:
    I am using
    "insert into shipmentCorrection (" + insfields + ") VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,empty_blob())"
    to insert a dummy record with empty_blob and then getting the BLOB locater by the
    following code:
    java.sql.ResultSet rset = stmt.executeQuery ("SELECT zipped_pdf FROM shipmentCorrection
    WHERE shipment_id ='"+ ShipmentId + "' and correction_num ="+ CorrectionNum +" and
    Bl_Type = '"+ blType +"'" );
    rset.next();
    BLOB blob = ((OracleResultSet)rset).getBLOB(1);
    java.io.OutputStream outstream = blob.getBinaryOutputStream();
    IN the above line of code where I cast the ResultSet to OracleResultSet, I get the
    classcastException as follows:
    I donno how to solve this problem. Could any one please help me on this ?
    java.lang.ClassCastException: weblogic.jdbc.pool.ResultSet
    at fmweb.SQL.PdfDataSQL.insertPdfData(PdfDataSQL.java:347)
    at fmweb.framework.ShipmentManagerImpl.insertPdfData(ShipmentManagerImpl
    .java:2471)
    at fmweb.framework.ShipmentManager_WLSkel.invoke(ShipmentManager_WLSkel.
    java:1316)
    at weblogic.rmi.extensions.BasicServerObjectAdapter.invoke(BasicServerOb
    jectAdapter.java:347)
    at weblogic.rmi.extensions.BasicRequestHandler.handleRequest(BasicReques
    tHandler.java:69)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
    .java:15)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)
    Thanks,
    Muralidaran Chakravarthy

    When using weblogic pool drivers it is not possible to cast to an Oracle
    JDBC driver, (or any other driver )
    pool driver hides the driver you have configured.
    "Muralidaran Chakravarthy" <[email protected]> wrote in message
    news:3ce16855$[email protected]..
    >
    Hi,
    I am using weblogic server 5.1 and connection pools for accessing Oracledatabase.
    We wanted to use BLOB in oracle and I coded the java class to insert datainto BLOB
    field.
    When I code a sample calss without using weblogic pool, I do not have anyproblem.
    But when I use the weblogic connection pool, I get classcastException asdescribed
    below:
    I am using
    "insert into shipmentCorrection (" + insfields + ") VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,empty_blob())"
    >
    to insert a dummy record with empty_blob and then getting the BLOB locaterby the
    following code:
    java.sql.ResultSet rset = stmt.executeQuery ("SELECT zipped_pdf FROMshipmentCorrection
    WHERE shipment_id ='"+ ShipmentId + "' and correction_num ="+CorrectionNum +" and
    Bl_Type = '"+ blType +"'" );
    rset.next();
    BLOB blob = ((OracleResultSet)rset).getBLOB(1);
    java.io.OutputStream outstream = blob.getBinaryOutputStream();
    IN the above line of code where I cast the ResultSet to OracleResultSet, Iget the
    classcastException as follows:
    I donno how to solve this problem. Could any one please help me on this ?
    java.lang.ClassCastException: weblogic.jdbc.pool.ResultSet
    at fmweb.SQL.PdfDataSQL.insertPdfData(PdfDataSQL.java:347)
    atfmweb.framework.ShipmentManagerImpl.insertPdfData(ShipmentManagerImpl
    java:2471)
    atfmweb.framework.ShipmentManager_WLSkel.invoke(ShipmentManager_WLSkel.
    java:1316)
    atweblogic.rmi.extensions.BasicServerObjectAdapter.invoke(BasicServerOb
    jectAdapter.java:347)
    atweblogic.rmi.extensions.BasicRequestHandler.handleRequest(BasicReques
    tHandler.java:69)
    atweblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
    java:15)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)
    Thanks,
    Muralidaran Chakravarthy

  • Easy JNDI + Connection Pool Question

    This is an easy question:
    Once I get the object represented by my connection pool from the
    Weblogic JNDI tree, how do I get a connection from the returned object
    of type weblogic.common.internal.ResourceAllocator?
    I keep getting ClassCastExceptions. I have tried
    ConnectionPoolDataSource, Connection, and DataSource.
    String conPool = "weblogic.jdbc.connectionPool.demoPool";
    try {
    Object obj = ctx.lookup(conPool);
    msg(DEBUG,"FROM LOOKUP" + obj.getClass().getName());
    //DataSource ds = (DataSource)ctx.lookup(conPool);
    //con = ds.getConnection();
    } catch (NameNotFoundException e) {
    // binding does not exist
    msg(ERROR,"BINDING DOES NOT EXIST",e);
    } catch (NamingException e) {
    // a failure occurred
    msg(ERROR,"NAMING FAILURE OCCURED",e);
    } catch (Exception e) {
    msg(ERROR,"SOME RANDOM ERROR",e);
    Thanks,
    -Jacob

    "Jacob Meushaw" wrote in message
    Once I get the object represented by my connection pool from the
    Weblogic JNDI tree, how do I get a connection from the returned object
    of type weblogic.common.internal.ResourceAllocator?
    I keep getting ClassCastExceptions.
    DataSource ds = (DataSource)ctx.lookup(conPool);I think, you must use narrow operation:
    Object reference = ctx.lookup(conPool);
    DataSource ds =
    (DataSource) PortableRemoteObject.narrow (ds,DataSource.class);
    I haven't got time to check it, but I hope that works.
    Wojtek

  • OAS 4.0.8.1 connection pooling ?

    Question 1
    ===========
    How does the oracle application server connect to the database using Jweb and Jservlet catridge ? any connection pooling before spawning the database ? if yes? how can I control the pooling system?
    Question 2
    ==========
    How can I log the following session being spawn thru the OAS with Oracle8i ?
    Are there any Monitoring tools in OAS that able to track the following session connecting to the database because I am doing a stress test on the tier architecture with 2 simple servlet
    1) without connection pooling
    2) with connection pooling

    Hi, working on a similar project with Oracle 8.0.5. database server and OAS4.0.8.1 JServlet Cartridge. Do not have answers to your questions, but have some more.
    1) oracle.html package:
    a) How can I add events like onChange, onClick etc. to Items?
    b) Font and TableRow class do not provide closing tags. Is it a bug? Any workarounds?
    2) Cannot store objects like connection pools, etc. in servletcontext as when I try to get them in another servlets, it gives ClassCastException. However, if I get them in an Object reference and display Classname, it does display the proper class name.
    getServlet also does not work so that I can share a global object with all servlets. Is it a but in OAS.
    Any other way by which I can share global objects across servlets.
    3) If I put a class in a CLASSPATH directory of the OAS application, and if that directory is not a virtually mapped directory, it is unable to locate my classes. Wonder how it is able to locate the oracle.html libraries which I access in the same way.
    null

  • Tomcat5.0.28 connection pooling urgent plz.......................

    hi all,
    I am new to jndi concet.I am trying to do connection pooling in tomcat 5.0.28.
    I have searched google a lot but not been able to succeed in this.
    I have created the datasource (ccmtest) from tomcat Administration.So it will automatically writes<resource></resourceparams> info in server.xml.
    I manually written <resource-ref> in web.xml
    I am trying to access the pool from java class.and i have written the following code
    Properties p=new roperties(); p.put(Context.INITIAL_CONTEXT_FACTORY,"org.apache.commons.dbcp.BasicDataSourceFactory");
    p.put(Context.PROVIDER_URL,"http://localhost:8080");
    Context context = new InitialContext(p);
                   DataSource ds=(DataSource)context.lookup("java:/comp/env/jdbc/ccmtest");
                   Connection conn = ds.getConnection();
    but i am getting the following error:
    javax.naming.NoInitialContextException: Cannot instantiate class: org.apache.com mons.dbcp.BasicDataSourceFactory [Root exception is java.lang.ClassCastException]
    First i didn't placed the code like p.put(Context.INITIAL_CONTEXT_FACTORY,.........but when i didn't place the code i got the error:
    javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
    I have placed the commonsdbcp.jar,commonspool.jar,commonscollections.jar in classpath.
    Plz help me
    Advance thanks.

    hi aniseed
    First of all thanks for the solution.
    i have read that documentation several times.and done the same thing what ever documented in that page u have given but still get the error:
    javax.naming.NoInitialContextException: Cannot instantiate class: com.mysql.jdbc.jdbc2.optional.MysqlDataSourceFactory [Root exception is java.lang.ClassCastException]

  • A very surprise problem about JDBC and connection pool

    I occur a very problem about JDBC and connection pool on Weblogic Platform
    8.1.
    There is a table in Oracle
    Table
    Name: t1
    id varchar2(5);
    content clob;
    id is primary key.
    If I use a connection pool to connect to Oracle,like following program:
    InitialContext ic = new InitialContext();
    DataSource ds = (DataSource) ic.lookup("cgOracleDataSource");
    con = ds.getConnection();
    then following program will throw a ClassCastException
    String sql = "select content from t1 where id = ?";
    PreparedStatement pst = con.prepareStatement(sql);
    pst.setString(1,"001");
    oracle.sql.CLOB clob = (oralce.sql.CLOB)rs.getClob("content") //this
    statement will throw ClassCastException
    but if I use JNDI to connect to Oracle,like following program, then those
    program above is ok
    private String dbdriver="oracle.jdbc.driver.OracleDriver";
    private String dburl="jdbc:oracle:thin:@192.168.7.148:1521:ep";
    private String username="ep";
    private String password="epuser";
    Class.forName(dbdriver);
    conn = DriverManager.getConnection(dburl, username, password);
    conn.setAutoCommit(false);
    On the contrary, if I use JNDI to connect to Oracle, following program will
    throw ClassCastException
    weblogic.jdbc.vendor.oracle.OracleThinClob clob =
    (weblogic.jdbc.vendor.oracle.OracleThinClob)rs.getClob("content");
    but it is fine if I use connection pool to connect to Oracle.
    I am confused this problem, who can tell me why?
    Daniel

    When you are getting connection using datasource lookup from weblogic
    connection pool, this connection is internally wrapped and hence you have to
    cast it to weblogic.jdbc.vendor.oracle.OracleThinClob which you do and so it
    works.
    But when you get connection by loading driver straight, you are getting naked
    oracle connection. In this case when you cast it to oracle.sql.Clob it works,
    as you have seen in your test case.
    I hope this explains what is going on with your code.
    Thanks,
    Mitesh
    Daniel wrote:
    I occur a very problem about JDBC and connection pool on Weblogic Platform
    8.1.
    There is a table in Oracle
    Table
    Name: t1
    id varchar2(5);
    content clob;
    id is primary key.
    If I use a connection pool to connect to Oracle,like following program:
    InitialContext ic = new InitialContext();
    DataSource ds = (DataSource) ic.lookup("cgOracleDataSource");
    con = ds.getConnection();
    then following program will throw a ClassCastException
    String sql = "select content from t1 where id = ?";
    PreparedStatement pst = con.prepareStatement(sql);
    pst.setString(1,"001");
    oracle.sql.CLOB clob = (oralce.sql.CLOB)rs.getClob("content") //this
    statement will throw ClassCastException
    but if I use JNDI to connect to Oracle,like following program, then those
    program above is ok
    private String dbdriver="oracle.jdbc.driver.OracleDriver";
    private String dburl="jdbc:oracle:thin:@192.168.7.148:1521:ep";
    private String username="ep";
    private String password="epuser";
    Class.forName(dbdriver);
    conn = DriverManager.getConnection(dburl, username, password);
    conn.setAutoCommit(false);
    On the contrary, if I use JNDI to connect to Oracle, following program will
    throw ClassCastException
    weblogic.jdbc.vendor.oracle.OracleThinClob clob =
    (weblogic.jdbc.vendor.oracle.OracleThinClob)rs.getClob("content");
    but it is fine if I use connection pool to connect to Oracle.
    I am confused this problem, who can tell me why?
    Daniel

  • RFC_FAILURE affects Connection Pool

    Using VB.NET (2003) with .Net Connector 2.0.
    An intermittent problem causes a RFC Call to fail, and an exception is raised in the .NET code. The Exception message is:
         See RFC trace file or SAP system log for more details
    The Trace file shows:
    ERROR file opened at 20051115 131423 GMT Standard
         T, SAP-REL 640,0,78 RFC-VER 3 759904 MT-SL
    <b>T:2844 Could not send rfc container 0x130
    T:2844 <* RfcCall [1] : returns 1:RFC_FAILURE
    T:2844 <* RfcCallReceive [1] : returns 1:RFC_FAILURE
    >TS> Tue Nov 15 13:14:24 2005
    T:2844 <* RfcCleanupContext [1] : returns
              18:RFC_INVALID_HANDLE
    T:2844 <* RfcCleanupContext [1] : returns
              18:RFC_INVALID_HANDLE</b>
    This error adversely affects the Connection Pool – as calls to other RFCs are now prone to similar intermittent errors…
    Is there any way to prevent the problem causing problems with Connection Pool ?
    Is there any way of removing a “faulty” connection from the pool ? (NB Close and Dispose on the connection does not help)

    The application is a Windows service - so I don't want to lose any connections. I assume that closing the connection (and not returning it) will affect the number of available connections in the pool(?).
    I'm using async. RFC call, and the problem is detected in the callback function when the EndRFCCall is performed.
    Original code:
    Public Sub Execute_RFC(ByVal parameters as string())
    ' Assign SAP Connection to RFC Proxy
    sapRFCProxy.Connection = SAPConnectionPool.GetConnectionFromPool(<i>ConnectString</i>)
    Call the SAP RFC - Asynchronously
    arAsyncResult = m_sapRFCProxy.BeginRFCCall( params..., AddressOf RFC_CallBack, objAsyncState)
    End Sub
    Private Sub RFC_CallBack(ByVal ar As IAsyncResult)
    Try
        ' Retrieve the SAP RFC Response...
        Call sapRFCProxy.EndRFCCall(ar, <i>param1, param2, etc...</i>)
    Catch ex As Exception
        ' Log the Error...
    End Try
    ' Return the Connection
    Call SAPConnections.ReturnConnection(sapRFCProxy.Connection)
    End Sub
    I have changed the code as suggest so that the connection is closed, disposed but <u>not</u> returned. This cleared the RFC_INVALID_HANDLE errors, but the main problem of a corrupted connection persists.
    Diagnostics produced by the amended code:
    <u>Trace File (Info):</u>
    2005-11-16 11:55:46Z     Warning: RfcCleanupContext failed. Closing connection
    <u>dev_RFC.trc</u>
    ERROR file opened at 20051116 115546 GMT Standard T, SAP-REL 640,0,78 RFC-VER 3 759904 MT-SL
    T:3068 ======> CPIC-CALL: 'CMSEND'
    ERROR       program state check for conversation 99610798
    TIME        Wed Nov 16 11:55:46 2005
    RELEASE     640
    COMPONENT   CPIC (TCP/IP)
    VERSION     3
    RC          471
    MODULE      r3cpic.c
    LINE        2576
    DETAIL      called function STSEND in state state=BUFFER_DATA2
    COUNTER     1
    T:3068 <* RfcCall [20] : returns 1:RFC_FAILURE
    T:3068 <* RfcCallReceive [20] : returns 1:RFC_FAILURE
    T:3068 <* RfcCleanupContext [20] : returns 1:RFC_FAILURE
    Even with the change to the code, a call to a reliable RFC will now fail <u>intermittently</u> with:
    T:2876 Could not send rfc container 0x130
    T:2876 <* RfcCall [24] : returns 1:RFC_FAILURE
    T:2876 <* RfcCallReceive [24] : returns 1:RFC_FAILURE
    Thanks

  • Connection pool / db failure

    WLS6.0 sp2 / Win2k
    Oracle 8.1.7 / Solaris 8
    problem is if DB fails, the connection pool fails, and will not restart. If I run a java weblogic.Admin EXISTS_POOL command, it says the pool doesnt exist.
    If i run a RESET_POOL, using the system user password, it comes back with:
    Exception in thread "main" javax.naming.AuthenticationException. Root exception is java.lang.Securi
    tyException: Authentication for user guest denied in realm weblogic
    <<no stack trace available>>
    I have test on reserved set (and dual as the table).
    Anyone shed any light on what could be going wrong, because right now, every time the DB fails, we have to restart the **&$"&^ server.... (and that takes around 20mins for all the apps to init)
    tks
    will

    Hi Will,
    When you bring up the server, if the database is down, your connection pools
    will not come up if you have an initial capacity greater than 0. This is a
    known issue and the workaround for this is to set the initial capacity to
    zero so the pool comes up even when the database is down, then make sure you
    set the capacity increment to the value that you like your initial capacity
    to be and have the TestConnectionOnReserve to true.
    hth
    sree
    "Will" <[email protected]> wrote in message
    news:3d13111f$[email protected]..
    WLS6.0 sp2 / Win2k
    Oracle 8.1.7 / Solaris 8
    problem is if DB fails, the connection pool fails, and will not restart.If I run a java weblogic.Admin EXISTS_POOL command, it says the pool doesnt
    exist.
    If i run a RESET_POOL, using the system user password, it comes back with:
    Exception in thread "main" javax.naming.AuthenticationException. Rootexception is java.lang.Securi
    tyException: Authentication for user guest denied in realm weblogic
    <<no stack trace available>>
    I have test on reserved set (and dual as the table).
    Anyone shed any light on what could be going wrong, because right now,every time the DB fails, we have to restart the **&$"&^ server.... (and that
    takes around 20mins for all the apps to init)
    >
    tks
    will

  • RFC_ERROR_SYSTEM_FAILURE: Time limit exceeded. Connection Pool - JCO api

    Hi Everyone
    My Connection  Pool parameters JCO api.
    client=300
    user=SISGERAL_RFC
    passwd=******
    ashost=14.29.3.120
    sysnr=00
    size=10
    I have these parameters on my Connection Pool and sometimes appear these wrongs in my application:
    1.
    2006-01-07 13:20:37,414 ERROR com.tel.webapp.framework.SAPDataSource - ##### Time limit exceeded. LOCALIZED MESSAGE = Time limit exceeded. KEY = RFC_ERROR_SYSTEM_FAILURE GROUP = 104 TOSTRING = com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE: Time limit exceeded.
    2.
    2006-01-07 14:01:31,007 ERROR com.tel.webapp.framework.SapPoolConnectionManager - Timeout
    I’d like to know if is happening.
    Are there something wrong with my connection pool?
    What can be happening?
    Thanks

    Raghu,
    Thanks for your response.
    Yes, the pool connections are in place according to the sAP note mentioned above.
    Regards,
    Faisal

  • Connection Pool Failure: "No suitable driver"

    Hi,
    Upon server startup, I get the following result:
    <Nov 7, 2001 4:18:32 PM CST> <Error> <JDBC> <Cannot startup connection pool "ora
    cleTrufflePool" No suitable driver>
    I assumed it was a path problem, but in the startWebLogic.cmd script I've set the PATH and CLASSPATH variables to the same as in a separate command window that can successfully dbping the Oracle db.
    One thing I completely don't understand is what the URL value should be for the pool, and I can't see a pattern in the examples and docs I've found on this. Here are my pool settings, at any rate:
    Name: oracleTrufflePool
    URL: myOracleServerName
    Driver Classname: weblogic.jdbc.oci.Driver
    Properties:
    user=user
    password=password
    server=myOracleServerName
    ACLName: user
    Password: password
    As you can see, I also don't understand whether the Oracle user name and password must be duplicated in the Properties section, or should they really only be listed in the ACLName and Password fields (in the Server Console UI)?
    TIA,
    Steve

    Hi. The issue is that the URL you give is not the URL the driver (weblogic.jdbc.oci.Driver)
    wants. The URL should be "jdbc:webLogic:oci". The properties user, password and server
    will be passed to the driver for conenction attempts. The ACL is for who gets to use the
    pool, and the other password entry is only if you need the DBMS password to be encrypted
    in the XML. If so, set that password value, and don't have it in the driver properties.
    Joe
    Steve Clark wrote:
    >
    Hi,
    Upon server startup, I get the following result:
    <Nov 7, 2001 4:18:32 PM CST> <Error> <JDBC> <Cannot startup connection pool "ora
    cleTrufflePool" No suitable driver>
    I assumed it was a path problem, but in the startWebLogic.cmd script I've set the PATH and CLASSPATH variables to the same as in a separate command window that can successfully dbping the Oracle db.
    One thing I completely don't understand is what the URL value should be for the pool, and I can't see a pattern in the examples and docs I've found on this. Here are my pool settings, at any rate:
    Name: oracleTrufflePool
    URL: myOracleServerName
    Driver Classname: weblogic.jdbc.oci.Driver
    Properties:
    user=user
    password=password
    server=myOracleServerName
    ACLName: user
    Password: password
    As you can see, I also don't understand whether the Oracle user name and password must be duplicated in the Properties section, or should they really only be listed in the ACLName and Password fields (in the Server Console UI)?
    TIA,
    Steve

  • Connection Pool Failure

    Hello. I'm using wls 5.1 and Oracle 8i and an unable to make a connection pool. I keep getting the following with the message below. Where and how do I change my path?
    weblogic.common.ResourceException: weblogic.common.ResourceException:
    Could not create pool connection. The DBMS driver exception was:
    java.sql.SQLException: System.loadLibrary threw java.lang.UnsatisfiedLinkError
    'no weblogicoci36 in java.library.path'.
    at weblogic.jdbcbase.oci.Driver.connect(Driver.java:116)

    Hi,
    You need to ensure that the ORACLE_HOME is set and PATH has
    %ORACLE_HOME%\bin;%ORACLE_HOME%\lib;%WL_HOME%\bin\oci816_8 (check verison of
    database) in the server startup script.
    hth
    sree
    "Purvi" <porgie_76@> wrote in message news:3c6306f9$[email protected]..
    Hello. I'm using wls 5.1 and Oracle 8i and an unable to make a connection
    pool. I keep getting the following with the message below. Where and how do
    I change my path?
    weblogic.common.ResourceException: weblogic.common.ResourceException:
    Could not create pool connection. The DBMS driver exception was:
    java.sql.SQLException: System.loadLibrary threw
    java.lang.UnsatisfiedLinkError
    'no weblogicoci36 in java.library.path'.
    at weblogic.jdbcbase.oci.Driver.connect(Driver.java:116)

  • Create A Connection Pool In the ServletContextListener

    The Specification says that we should create the connection pool in the ServletContextListener. I have the code for creating a connection pool (see below). How do I create it in the ServletContextListener?
    import java.sql.Connection;
    import java.sql.SQLException;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.sql.DataSource;
    public class DBConnection
       public static Connection getDBConnection() throws SQLException
          Connection conn = null;
          try
             InitialContext ctx = new InitialContext();
             DataSource ds = ( DataSource ) ctx.lookup( "java:comp/env/jdbc/MySQLDB" );
             try
                conn = ds.getConnection();
             catch( SQLException e )
                System.out.println( "Open connection failure: " + e.getMessage() );
          catch( NamingException nEx )
             nEx.printStackTrace();
          return conn;

    I use the connection pool feature provide by the server I use. Is this what I should do? Please confirm.
    import java.sql.Connection;
    import java.sql.SQLException;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.sql.DataSource;
    import javax.servlet.*;
    public class CreateResources implements javax.servlet.ServletContextListener
         public void contextInitialized(ServletContextEvent sce)
              public static Connection getDBConnection() throws SQLException
                   Connection conn = null;
                   try
                        InitialContext ctx = new InitialContext();
                        DataSource ds = ( DataSource ) ctx.lookup( "java:comp/env/jdbc/MySQLDB" );
                        try
                             conn = ds.getConnection();
                        catch( SQLException e )
                             System.out.println( "Open connection failure: " + e.getMessage() );
                  catch( NamingException nEx )
                        nEx.printStackTrace();
                  return conn;
         public void contextDestroyed(ServletCotnextEvent sce)
    }

  • Issue JDBC connection pool with Glassfish 3.1.2.2 and Oracle XE 11gR2

    Hello,
    I am experiencing an issue with pinging a JDBC connection Pool.
    I installed the following without any warnings or errors:
    Operating System: Oracle Enterprise Linux 5
    Oracle XE 11gR2 (11.2.0.2.0) database
    Glassfish 3.1.2.2
    I will refer to the steps I did after the installations
    1) In the .profile file of the OS I add the following:
    JRE_HOME=/usr/java/jre1.6.0_31; export JRE_HOME
    JAVA_HOME=/usr/java/jdk1.6.0_31; export JAVA_HOME
    GLASSFISH_DIR=/u01/glassfish3
    GLASSFISH_HOME=/u01/glassfish3/glassfish
    DERBY_HOME=$GLASSFISH_DIR/javadb
    OPEN_MQ_HOME=$GLASSFISH_DIR/mq
    PATH=:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:$HOME/bin:$GLASSFISH_HOME/bin:$DERBY_HOME/bin:$OPEN_MQ_HOME/bin
    export GLASSFISH_HOME
    export DERBY_HOME
    export OPEN_MQ_HOME
    export PATH
    LD_LIBRARY_PATH=/u01/app/oracle/product/11.2.0/xe/lib; export LD_LIBRARY_PATH
    . /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
    2) I copied the ojdbc6.jar to the $GLASSFISH_HOME/domains/domain1/lib
    3) I login to the Glassfish admin console and created a new JDBC Connection Pool.
    Pool Name: ds_orasys
    Resource Type: javax.sql.DataSource
    Datasource Classname: oracle.jdbc.pool.OracleDataSource
    User: [myschema]
    Password: [myschema password]
    URL: jdbc:oracle:thin:@localhost:1521:xe
    When I ping the connection pool I get the following message in the server log:
    [#|2012-10-23T12:14:37.069+0300|WARNING|glassfish3.1.2|javax.enterprise.resource.resourceadapter.com.sun.enterprise.connectors.service|_ThreadID=22;_ThreadName=Thread-2;|RAR8054: Exception while creating an unpooled [test] connection for pool [ ds_orasys ], Connection could not be allocated because: Invalid Oracle URL specified|#]
    [#|2012-10-23T12:14:37.071+0300|SEVERE|glassfish3.1.2|org.glassfish.admingui|_ThreadID=19;_ThreadName=Thread-2;|RestResponse.getResponse() gives FAILURE. endpoint = 'http://212.205.62.217:4848/management/domain/resources/ping-connection-pool.json'; attrs = '{id=ds_orasys}'|#]
    I tried to use different jar files. I used ojdbc6dms.jar and ojdbc14.jar.
    I also copied the jar files in the $GLASSFISH_HOME/domains/domain1/lib/ext directory as some people suggested. Still no luck. I keep getting the same error messages in the server.log
    Can anybody help me out or point me to the right direction.
    Thank you in advance

    The error is in the URL. It was in front of my eyes and I couldn't see the error. I skipped the ':' before the '@' when I created the pool. It is working fine now.

  • Configuring JCo3 Connection Pool with single sign on on non SAP Java server

    Hi Everyone,
    i have configured a connection pool on JBoss as per JCo3 Documentation and is working great.
    Now I need help to configure this connection pool with single sign on so that RFc on SAP ECC systems are executed using end users credential rather than using single user name password used to configure JCo connection pool.
    On SAP Java stack I am sure its possible within Java WebDynpro    and i assume using JCA resource adapter. But what if we don't want to use SAP Java App server.
    Any help will be appreciated.
    Thanks,
    Divyakumar Jain

    Eason, 你好!
    I have exactly the same problem.  Did you find a solution to this problem?  If so, please let me know!

  • Recognizing alternate connection pool

    hi..
    Currently, If a connection pool fails due to a TNS failure, application instance also fails, it has lost connectivity.
    But I need, my application to recognize an alternate connection pool, such that if transactions time out on one connection, application would recognize that the primary pool is not responding and retry the transactions on a secondary data connection pool via the alternate DB instance.
    If I get the solution for this, it will be appreciable
    Thanks in advance
    Suresh

    Hi. Look at our documentation on multipools.
    Joe
    Suresh Kumar wrote:
    hi..
    Currently, If a connection pool fails due to a TNS failure, application instance also fails, it has lost connectivity.
    But I need, my application to recognize an alternate connection pool, such that if transactions time out on one connection, application would recognize that the primary pool is not responding and retry the transactions on a secondary data connection pool via the alternate DB instance.
    If I get the solution for this, it will be appreciable
    Thanks in advance
    Suresh

Maybe you are looking for