Websphere 6 connection pooling

Hi,
Just a quick one (I hope).
I'm setting up an application to run on websphere. To get the connection pooling to work, is it as simple as setting up the connection in the server config as a db2ConnectionPoolDataSource. eg dataSource provider name = prov1, type = db2ConnectionPoolDataSource. DataSource name = ds1, jndi name=jdbc/ds1.
Then whenever I need to obtain a connection, I simply reference this jndi name and websphere takes care of the pooling. e.g.
javax.naming.InitialContext ctx = new javax.naming.InitialContext();
dataSource = (javax.sql.DataSource) ctx.lookup("jdbc/ds1);
connection = dataSource.getConnection(userName,password);
Am I on the right track wih this or have I missed the point (again)?
Thanks
Message was edited by:
spidermonkey
spelling error

I guess you have to make an entry into your app's web.xml. I made an entry and it worked...
<resource-ref>
<description>Oracle XE Datasource connection</description>
<res-ref-name>jdbc/oraclexe</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
and also the ojdbc14.jar should be in tomcat's lib and not your app's lib.
These were the mistakes i made , hope this helps

Similar Messages

  • Connection Pooling in Java Application for interacting with Websphere MQ

    I have following infrastruture at my site.
    1> Machine #1 has below
    - Websphere MQSeries 6.0 (client setup - Slim Client)
    - OS = Windows 2003
    - i/p address : 10.1.11.10
    - Tomcat web server 5.5
    - No Websphere Application Server.
    2> Machine #2 has below
    - Websphere MQSeries 6.0 (Server setup)
    - OS = Windows 2003
    - i/p address : 10.1.11.21
    - Queue Manager Name : qMngr
    - Queue Name (client will put the message) : toServerQ
    - Queue Name (client will get the message) : fromServerQ
    - I have developed the web application in Tomcat web server 5.5 using MQ base classes for accessing the Websphere MQ.
    - Since it is web application there can be atleast 25 request at time.
    i.e. when client#1 request data from queue he must get data related to client#1 only not other than client#1.
    - For accessing the websphere MQ, I am using websphere MQ base classes in Client mode. (Not JMS)
    ==>>>> Source Code as follows
    Class MQInterface (Servlet) is used for getting the web request from user and reply the response in html format.
    public class MQInterface extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    String Output = "";
    System.out.println("!! Entered into Banking Servlet !!");
    String requestParam = request.getParameter("OPRN_CODE");
    if (requestParam.equalsIgnoreCase("GET_NAME_DETAIL")){
         String id = request.getParameter("id");
         Output = MQDataObject().getNameDetail(id);
    return Output;
    response.setContentType("text/html");
         PrintWriter out = response.getWriter();
    out.println(Output);
    Class MQDataObject is used for getting and putting data(message) into Websphere MQ.
    public class MQDataObject {
    private String hostname = "10.1.11.21";
    private String channel = "Chnl1";
    private String qManager = "qMngr1";
    private MQQueueManager qMgr;
    private ISISSSLAdaptor ssl;
    private ISISConfigHelper ConfigHelper;
    private String Output;
    public MQDataObject(){
    MQEnvironment.hostname = hostname;
    MQEnvironment.channel = channel;
    MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES_CLIENT);
    MQEnvironment.sslCipherSuite = "SSL_RER_WERH_3KIUD_EQW_CRT_SSA";
    try{
    ssl = new DEMOSSLAdaptor("DEMOSSLAdaptor.config");
    ConfigHelper = new ISISConfigHelper("MQConnection.config");
    }catch(Exception exception){
    System.out.println("Exception Details => " + exception);
    public String getNameDetail(String sendMessage){
    MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES_CLIENT);
         String msgText = "";
         try
    // Create a connection to the Queue Manager.
    qMgr = new MQQueueManager(qManager);
    // Set up the options on the queue we wish to open
    int openOutOptions = MQC.MQOO_OUTPUT;
    // Specify the queue to open and open option      
    MQQueue sendingQueue = qMgr.accessQueue("toServerQ",openOutOptions,null,null,null);
    // Define the MQ message and write some text in UTF format
    MQMessage sendingMessage = new MQMessage();
    sendingMessage.writeUTF(sendMessage);
    // Specify the message options..
    MQPutMessageOptions pmo = new MQPutMessageOptions();
    // Put message on the queue
    sendingQueue.put(sendingMessage,pmo);      
    // Close Sending Queue
    sendingQueue.close();          
    // Receiving the message back
    // Wait for 5 seconds to get reply from receiving queue
    Thread.sleep(5000);
    // Set up the options on receiving queue we wish to open
    int openInOptions = MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT;
    MQQueue receivingQueue = qMgr.accessQueue("fromServerQ",openInOptions,null,null,null);
    MQMessage receivingMessage = new MQMessage();
    // Set and Get the message options
    MQGetMessageOptions gmo = new MQGetMessageOptions();
    // Receiving the message off the queue.
    receivingQueue.get(receivingMessage,gmo);
    // Get the message from the receiving queue.
    msgText = receivingMessage.readStringOfByteLength(receivingMessage.getMessageLength());
    // Close Receiving Queue
    receivingQueue.close();
    // Close a connection to the Queue Manager.
    qMgr.disconnect();
    // Parse the received message using parser.
    String output = new IFXXMLParser().runExample(msgText);
    catch (MQException mqex){
    System.out.println("MQ Error : " + mqex);
    catch (Exception ex){
    System.out.println("General Error : " + ex);
    return Output;
    The message for sending the receiving is in XML format.
    Could any one help me following in questions.
    1> Since there is 30 request at time so for improve the performance and resources I need to do connection pooling.
    How can I achieve this using base classes.
    2> While retrieving (getting) the message for particular request how can I identify the response message.
    i.e. when client#1 request data from queue he must get data related to client#1 only not other than client#1.      
    because In above scenario there are separate queues for getting the message and putting the message.
    I have read the tutorial on connection pulling but I am little confused.
    i.e. default connection pool and MQSimpleConnectionManager.
    Thanking in Advance
    Sanjeev

    RahulSharna wrote:
    Well my advice would be something different here..
    Can you tell us whether the swing application that you are referring could be used by multiple client machines at the sametime ??
    If yes my advice for you would be a costly affair yet effective.
    Think of seperating your DAO layer from the swing client and you can make an attempt to make a centralized tier where DAO and business services are handled (also ensure that we you use connection pooling with a good tranaction support for building that tier).
    Think of publishing those as services either by using remoting tehnologies like RMI,Burlap, Hessian or as a Webservice.
    All you'd do is implementing respective client in the swing or client application which you are referring to..
    (if you things are too wierd and what is the best solution to go about the below url offers a good solution
    [http://tuscany.apache.org/]
    And in doing this you'd ensure there is not toomuch load on the Database and you'd have a centralized location where you can start tracing the problem.My guess would be that since the OP said that they have a server that they do in fact have a server.

  • Websphere Application Server 5.1 Hangs when using Oracle Connection Pool

    I have a j2ee application that runs on WAS 5.1 ( IBM JDK 1.4 ) and Oracle 10g 10.2.0 . My customer is doing load testing with 25 virtual users and a connection pool with a max size of 10. When the test starts all 25 users attempt to get a connection, and the first 10 get a connection. At this point the application server hangs with the connection pool in allocation. This is seen in Tivoli. Each thread only needs one connection to process it's request.
    I have my own home grown connection pool which when used under this load does not experience and issue. Monitoring from Oracle's admin console I see a max of 10 sessions. The home grows connection pool does not use a WAS DataSource.
    I have configured my application to use DB2 with a WAS DataSource and the application server does not hang. Monitoring using Tivoli shows the connection pool going into allocation, but it recovers as is expected.
    Are there any known issues with the Oracle JDBC drivers when used with WAS 5.1 DataSources?
    Any direction would be helpful, as I currently thing there is an issue with Oracle's Connection Pool and the IBM JVM.
    Thanks,
    J

    just an attention call: OracleDatasource connection pool does not accept parameters such as removeAbandoned, minEvictableIdleTimeMillis, timeBetweenEvictionRunsMillis, etc, these are specific for the tomcat dbcp implementation (http://tomcat.apache.org/tomcat-6.0-doc/jndi-resources-howto.html#JDBC_Data_Sources).
    For the accepted ones read this http://download.oracle.com/docs/cd/B28359_01/java.111/b31224/concache.htm
    Edited by: user7428636 on 24/Jan/2011 6:22

  • Jdbc-odbc bridge with Connection pool datasource

    I have created a little j2ee app in which an enterprise bean accesses a ms sql server table by creating a JNDI datasource using sun.jdbc.odbc.JdbcOdbcDriver. I can successfully deploy it and run it on the jsdkee 1.3 J2EE server. However, when I attempt to deploy it on WebSphere 4.0 AES, the app fails attempting to make the database connection. The error log states: "Unable to connect to database: the class (sun.jdbc.odbc.JdbcOdbcDriver) does not implement javax.sql.ConnectionPoolDatasource or javax.sql.XADatasource". Which, of course, is probably true, but is there a WebSphere workaround? There is nothing remotely related mentioned at the IBM WebSphere site.

    Thx. So far, I have not found a readily accessible free alternative driver that supports connection pooling. The drivers list notes several corporate offerings that do; freetds may work but I don't know yet. If it does, I will update this discussion.

  • Database connection pool to stand alone java class

    Hi all,
    I would like to know the best way to use a database connection pool with a stand alone java class.
    In my web applications I usually use JDBC Data Source version 5 to connect to my database. In this case, I connect to an Oracle database. But in this scene, I've a WebSphere Application Server to provide this connection pool. But for stand alone applications, I don't know how to do because I don't have a Application server to run on.
    Can enyone help me with this beginner question?
    Best regards.

    I tried to find the pool class I created but it must be on another CD. Anyway, you can easily create a number of connections and place them on a stack (your own or java's). When you need one, pop it off. When you are finished, push it back.
    Good luck.

  • Configuring JMS Connection Pooling

    Hi there,
              as far as I understand, if I use a resource-ref when declaring a JMS connection factory, pooling connections, sessions, and producers is automatically enabled. Is there any way for fine-tuning the way this pool works, e.g. configuring minimum/maximum pool sizes?
              We are using WLS 9.2 MP 1, using WebSphere MQ as remote JMS provider (with com.ibm.mq.jms.MQXAQueueConnectionFactory as factory implementation).
              Best regards
              Martin

    Hi Tom,
              thanks for your answer. Assuming that the BEA connection pooling works fine, there is still the IBM ConnectionFactory implementation that provides its own connection pooling.
              Do you know a way to configure this part? I only see the Java API of this class when registering it in the JNDI tree, and it provides no access to connection pooling settings.
              Best regards
              Martin

  • Connection Pooling Help Needed

    Greetings.
    I am trying to get a database connection in Websphere 5.0 (running on Redhat Adv. Server) and my connection times are very, very slow. Below is the code to get the connection:
    Properties parms = new Properties();
    parms.setProperty(Context.INITIAL_CONTEXT_FACTORY,
    "com.ibm.websphere.naming.WsnInitialContextFactory");
    // Create the Initial Naming Context
    Context ctx = new InitialContext(parms);
    DataSource ds = (DataSource) ctx.lookup("jdbc/customer");
    Connection con = ds.getConnection();
    Here is the setup for the database connection within the Websphere Admin Console to an Oracle 8i database:
    Implementation: oracle.jdbc.pool.ConnectionPoolDataSource
    JNDI Name: jdbc/customer
    Statement Cache Size: 10
    Data source helper class name: com.ibm.websphere.rsadapter.OracleDataStoreHelper
    Connection Timeout: 1800
    Maximum Connections: 30
    Minimum Connections: 10
    Reap Time: 180
    Unused Timeout: 1800
    Aged Timeout: 0
    Purge Policy: Entire Pool
    We CAN connect to the database. We CAN run SQL statements and stored procedures just fine. Everything with the database is working correctly. ok, so here is the problem... The statement: Connection con = ds.getConnection(); Takes a long time. 3+ seconds. Every time. No Matter what the load is. We need to get this time down significantly. It's killing our web services.
    Using JMeter, We have tested it using a single thread and up to 50 concurrent threads and it all runs the same. 3+ seconds. We actually changed the code to create a database connection just using JDBC with no JNDI lookup and it runs at the same speed. It is almost as if the connection pool is not working correctly.
    So then we looked to see if we were ever getting the same connection twice, but when we printed out the object references, it looks like the connection is a brand new connection EVERY time because the object references are different. Please see the partial log file I have included below.
    Right now, our theory is that the connection pool is just getting us a new connection every time without reusing existing connections. We have played with all the settings on minimum connections, maximum connections, and everything else and nothing seems to help.
    Thank you to anyone that might be able to help us.
    Stephen
    Log File:
    ----- getDatabaseConnection() ------
    ERROR - 1 - Connection is com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@7aac74cd
    ERROR -
    ----- getDatabaseConnection() ------
    1066140699427Using existing ds
    getting datasource took 0 milliseconds to complete.
    getting connection took 3733 milliseconds to complete.
    getDatabaseConnection took 3733 milliseconds to complete.
    ----- getDatabaseConnection() ------
    ERROR - 1 - Connection is com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@7580f4cd
    ERROR -
    ----- getDatabaseConnection() ------
    1066140699707Using existing ds
    getting datasource took 0 milliseconds to complete.
    getting connection took 3454 milliseconds to complete.
    getDatabaseConnection took 3454 milliseconds to complete.
    ----- getDatabaseConnection() ------
    ERROR - 1 - Connection is com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@5b2b4cd
    ERROR -
    ----- getDatabaseConnection() ------
    1066140700199Using existing ds
    getting datasource took 0 milliseconds to complete.
    getting connection took 2965 milliseconds to complete.
    getDatabaseConnection took 2965 milliseconds to complete.
    ----- getDatabaseConnection() ------
    ERROR - 1 - Connection is com.ibm.ws.rsadapter.jdbc.WSJdbcConnection@2301b4ce
    ERROR -
    ----- getDatabaseConnection() ------
    1066140699752Using existing ds
    getting datasource took 0 milliseconds to complete.
    getting connection took 3417 milliseconds to complete.
    getDatabaseConnection took 3417 milliseconds to complete.

    The problem might be the version of Driver Class you use... If you use Oracle 9x, u need to have new version of classes12.jar/zip. Do check it out.

  • 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)

  • 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

  • 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.

Maybe you are looking for

  • Weblogic 10.3.3 to 10.3.5 patch for linux 64 bit

    hi, I need weblogic 10.3.3 to 10.3.5 patch for linux 64 bit. Thanks and regards, Edited by: 853559 on Jun 14, 2012 8:32 AM

  • Infinity wont open, Royal Mail, website and lots o...

    Hi All just got infinity, Today its working fast, but it wont open websites like www.royalmail.com,  www.flipkey.com (just examples) nor will my smart tv connect to lovefilm, none of my devices will connect to Sonos napster, yet they will stream radi

  • Upload .txt from IDM

    Hello, I am trying to upload .txt file using FileUpload display class in a Form and save it somewhere on the server. I am using FileUpload display class in form but that uploads the file as .tmp to Tomcat's temp folder with a randomly generated name.

  • EXCHANGE 2013 - ECP AND OWA INTERNAL ERROR 500 - NEW INSTALL

    Really hoping someone can help me here. I first installed 2012 OS and 2013 exchange and users were getting 'Unable to open your default folder' when trying to open outlook. After much googling and nothing working I decided to put 2008 R2 on the serve

  • Where do i find my AppleCare+ registration number?

    I just bought AppleCare+ for my iphone.  It arrived in the post and all I got was a A4 sheet titled 'packaging list' and a fat little book called the 'AppleCare + product guide'. So if I need to register the product, how do I find my  AppleCare+ regi