JDBC Pooling query

OK i have 4 servers in my cluster and wanted to check pooling is working ok as i have reports from Oracle dba we have exceeded maximum licensing connections with 'ORA-00019: maximum number of session licenses exceeded'
Now.. first of all would this be down to the application not closing the connection off after query?
Would this be in connection pooling? Ive checked already and can see 100connections set by default.
One thing im concerned about after looking in monitoring is this
Current capacity for 3 nodes is 100 and for one it shows 4?? I thought these would be equal. num available is also 4 whilst the others are 100?
Any  answers to above apreciated.

The application not closing the connection may have an effect, because this 'leaks' from the pool,
which may then have to make more. If you cannot fix the app, at least set a idle-connection-timeout
for the pool, so it can retract connections that your app has reserved but not used for that long.
As to one server showing 4 while the others 100, that is a higher-than-JDBC issue, asking why
user load was not sent to that node. JDBC just supplies a connection from the local instance
of the pool if/when the work is being done on a node.

Similar Messages

  • Slow performance WLS with jdbc pools

    Hi all, we have follow configuration of our system: the server with applications and server with jdbc pools. Recently we get strange situation. The server with jdbc pools it seems hung. We get thread dumps for this server and we see that it not hung, but normally work but very slow. Many weblogic.kernel.Default threads were busy by rmi database calls (see below). Anothe strange that before slowing server work nothing enties in server log. Last entry in server log were one hour before slow work. May someone propose why this situation can occure?
    Thread dump:
    <b>"ExecuteThread: '0' for queue: 'weblogic.kernel.Default'" id=11 idx=0x1c tid=6668 prio=5 alive, daemon
    at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:342)[optimized]
    at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
    at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
    at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
    at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
    at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
    at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
    at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
    at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
    at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
    at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
    at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
    at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
    at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
    at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
    at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
    at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
    at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
    at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
    at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
    at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
    at jrockit/vm/RNI.c2java(IIII)V(Native Method)
    -- end of trace
    "ExecuteThread: '1' for queue: 'weblogic.kernel.Default'" id=12 idx=0x1e tid=6669 prio=5 alive, daemon
    at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:346)[optimized]
    at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
    at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
    at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
    at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
    at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
    at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
    at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
    at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
    at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
    at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
    at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
    at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
    at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
    at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
    at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
    at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
    at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
    at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
    at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
    at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
    at jrockit/vm/RNI.c2java(IIII)V(Native Method)
    -- end of trace</b>

    Denis Reimer wrote:
    Hi all, we have follow configuration of our system: the server with applications and server with jdbc pools. Recently we get strange situation. The server with jdbc pools it seems hung. We get thread dumps for this server and we see that it not hung, but normally work but very slow. Many weblogic.kernel.Default threads were busy by rmi database calls (see below). Anothe strange that before slowing server work nothing enties in server log. Last entry in server log were one hour before slow work. May someon
    e propose why this situation can occure?
    Thread dump:
    <b>"ExecuteThread: '0' for queue: 'weblogic.kernel.Default'" id=11 idx=0x1c tid=6668 prio=5 alive, daemon
    at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:342)[optimized]
    at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
    at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
    at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
    at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
    at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
    at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
    at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
    at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
    at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
    at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
    at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
    at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
    at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
    at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
    at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
    at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
    at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
    at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
    at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
    at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
    at jrockit/vm/RNI.c2java(IIII)V(Native Method)
    -- end of trace
    "ExecuteThread: '1' for queue: 'weblogic.kernel.Default'" id=12 idx=0x1e tid=6669 prio=5 alive, daemon
    at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:346)[optimized]
    at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
    at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
    at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
    at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
    at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
    at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
    at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
    at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
    at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
    at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
    at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
    at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
    at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
    at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
    at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
    at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
    at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
    at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
    at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
    at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
    at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
    at jrockit/vm/RNI.c2java(IIII)V(Native Method)
    -- end of trace</b>Hi. It seems you're doing JDBC in an external client, using our RMI-based
    JDBC wrappers to the actual connection in the WLS server, and you are
    doing LOB retrieval. This means your query goes from your client to
    the WLS process, and then to the DBMS, and the LOB data (big) has to go
    from the DBMS to the WLS process and then back over RMI to your client.
    This is bound to be inefficient. If you can move your JDBC to a JSP or
    other serverside class, it will be much faster. Otherwise, if the
    management that WLS provides is not strictly necessary for the LOB
    manipulation, it may be faster to get that directly from the DBMS to
    the external client by using the vendor's JDBC driver directly.
    Joe

  • JDBC pool stats

    Are there any interfaces to query within SJSWS 6.1 that will provide run-time statistics for JDBC pools? I'm looking for number currently in use, max pool size (how large the pool has grown, not the static max), etc.
    thanks,
    -chris

    Hi Simon,
    "Simon Spruzen" <[email protected]> wrote in message
    news:[email protected]..
    WebLogic 6.1 SP2 (NT)
    There are 15 execute threads configured.
    There is one JDBC connection pool configured. In the monitoring screen(my-domain>
    JDBC Connection ...> my-pool> Active JDBC Conn...) I get these stats:
    Connections High......13Maximum number of connections reseved
    from the pool the same time.
    Connections Total.....26Running count of borrowed connections
    Connections...........8Current number of borrowed connections.
    1. Why is Connections High less than Connections Total?CH is a maximum, CT is a running count.
    2. Why would Connections Total be slowly creeping up? Does this imply thata connection
    isn't being returned to the pool?Brcause it's natural for a counter to grow.
    4. What's the relationship between Connections, Connections Total andConnections
    High?They're mainly run-time characteristics of a connection pool.
    Regards,
    Slava Imeshev

  • Use JDBC to query data for JSP Report

    Hi all,
    I met a trouble when use JDBC to query data,
    it can show data in report builder, but get error when call from url for exxample: http://localhost:8889/reports/TestJDBCReport.jsp
    found error message:
    javax.servlet.jsp.JspException: rwlib-1: REP-4100: Failed to execute data source. REP-0069: Internal error JDBCPDS-62000:Invalid sign-on parameter P_JDBCPDS
    javax.servlet.jsp.JspException: rwlib-1: REP-4100: Failed to execute data source.
    REP-0069: Internal error
    JDBCPDS-62000:Invalid sign-on parameter P_JDBCPDS
    anyone know pls help me
    Many thanks

    As a general rule, it's a good idea to separate the
    presentation (JSP and HTML) from the business rules
    (database access). I know you didn't do that on the
    AS/400, you had display files and business logic in
    the same program (at least, we certainly do in ours),
    but it's a good policy to follow in the web world.
    That means, don't put your database access code in
    the JSP. Other than that, it depends on the data.
    If you have simple data (e.g. customer's name and
    d address) then a Java bean would suffice. If you
    have complex data (e.g. customer's payment history)
    then a bean still might suffice. You would use an
    "include" if you had some data (static or dynamic)
    that you wanted to appear in several different pages
    in the same form.Thanks, I figured putting the code in the JSP was not the best way, but I wasn't sure about the other options.

  • Bug in Oracle JDBC Pooling Classes - Deadlock

    We are utilizing Oracle's connection caching (drivers 10.2.0.1) and have found a deadlock situation. I reviewed the code for the (drivers 10.2.0.3) and I see the same problem could happen.
    I searched and have not found this problem identified anywhere. Is this something I should post to Oracle in some way (i.e. Metalink?) or is there a better forum to get this resolved?
    We are utilizing an OCI driver with the following setup in the server.xml
    <ResourceParams name="cmf_toolbox">
    <parameter>
    <name>factory</name>
    <value>oracle.jdbc.pool.OracleDataSourceFactory</value>
    </parameter>
    <parameter>
    <name>driverClassName</name>
    <value>oracle.jdbc.driver.OracleDriver</value>
    </parameter>
    <parameter>
    <name>user</name>
    <value>hidden</value>
    </parameter>
    <parameter>
    <name>password</name>
    <value>hidden</value>
    </parameter>
    <parameter>
    <name>url</name>
    <value>jdbc:oracle:oci:@PTB2</value>
    </parameter>
    <parameter>
    <name>connectionCachingEnabled</name>
    <value>true</value>
    </parameter>
    <parameter>
    <name>connectionCacheProperties</name>
    <value>(InitialLimit=5,MinLimit=15,MaxLimit=75,ConnectionWaitTimeout=30,InactivityTimeout=300,AbandonedConnectionTimeout=300,ValidateConnection=false)</value>
    </parameter>
    </ResourceParams>
    We get a deadlock situation between two threads and the exact steps are this:
    1) thread1 - The OracleImplicitConnectionClassThread class is executing the runAbandonedTimeout method which will lock the OracleImplicitConnectionCache class with a synchronized block. It will then go thru additional steps and finally try to call the LogicalConnection.close method which is already locked by thread2
    2) thread2 - This thread is doing a standard .close() on the Logical Connection and when it does this it obtains a lock on the LogicalConnection class. This thread then goes through additional steps till it gets to a point in the OracleImplicitConnectionCache class where it executes the reusePooledConnection method. This method is synchronized.
    Actual steps that cause deadlock:
    1) thread1 locks OracleImplicitConnectionClass in runAbandonedTimeout method
    2) thread2 locks LogicalConnection class in close function.
    3) thread1 tries to lock the LogicalConnection and is unable to do this, waits for lock
    4) thread2 tries to lock the OracleImplicitConnectionClass and waits for lock.
    ***DEADLOCK***
    Thread Dumps from two threads listed above
    thread1
    Thread Name : Thread-1 State : Deadlock/Waiting on monitor Owns Monitor Lock on 0x30267fe8 Waiting for Monitor Lock on 0x509190d8 Java Stack at oracle.jdbc.driver.LogicalConnection.close(LogicalConnection.java:214) - waiting to lock 0x509190d8> (a oracle.jdbc.driver.LogicalConnection) at oracle.jdbc.pool.OracleImplicitConnectionCache.closeCheckedOutConnection(OracleImplicitConnectionCache.java:1330) at oracle.jdbc.pool.OracleImplicitConnectionCacheThread.runAbandonedTimeout(OracleImplicitConnectionCacheThread.java:261) - locked 0x30267fe8> (a oracle.jdbc.pool.OracleImplicitConnectionCache) at oracle.jdbc.pool.OracleImplicitConnectionCacheThread.run(OracleImplicitConnectionCacheThread.java:81)
    thread2
    Thread Name : http-7320-Processor83 State : Deadlock/Waiting on monitor Owns Monitor Lock on 0x509190d8 Waiting for Monitor Lock on 0x30267fe8 Java Stack at oracle.jdbc.pool.OracleImplicitConnectionCache.reusePooledConnection(OracleImplicitConnectionCache.java:1608) - waiting to lock 0x30267fe8> (a oracle.jdbc.pool.OracleImplicitConnectionCache) at oracle.jdbc.pool.OracleConnectionCacheEventListener.connectionClosed(OracleConnectionCacheEventListener.java:71) - locked 0x34d514f8> (a oracle.jdbc.pool.OracleConnectionCacheEventListener) at oracle.jdbc.pool.OraclePooledConnection.callImplicitCacheListener(OraclePooledConnection.java:544) at oracle.jdbc.pool.OraclePooledConnection.logicalCloseForImplicitConnectionCache(OraclePooledConnection.java:459) at oracle.jdbc.pool.OraclePooledConnection.logicalClose(OraclePooledConnection.java:475) at oracle.jdbc.driver.LogicalConnection.closeInternal(LogicalConnection.java:243) at oracle.jdbc.driver.LogicalConnection.close(LogicalConnection.java:214) - locked 0x509190d8> (a oracle.jdbc.driver.LogicalConnection) at com.schoolspecialty.cmf.yantra.OrderDB.updateOrder(OrderDB.java:2022) at com.schoolspecialty.cmf.yantra.OrderFactoryImpl.saveOrder(OrderFactoryImpl.java:119) at com.schoolspecialty.cmf.yantra.OrderFactoryImpl.saveOrder(OrderFactoryImpl.java:67) at com.schoolspecialty.ecommerce.beans.ECommerceUtil.saveOrder(Unknown Source) at com.schoolspecialty.ecommerce.beans.ECommerceUtil.saveOrder(Unknown Source) at com.schoolspecialty.ecommerce.beans.UpdateCartAction.perform(Unknown Source) at com.schoolspecialty.mvc2.ActionServlet.doPost(ActionServlet.java:112) at com.schoolspecialty.ecommerce.servlets.ECServlet.doPostOrGet(Unknown Source) at com.schoolspecialty.ecommerce.servlets.ECServlet.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at com.schoolspecialty.ecommerce.servlets.filters.EcommerceURLFilter.doFilter(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) at java.lang.Thread.run(Thread.java:534)

    We used a documented option to abandon connects in the case of an unforeseen error. The consequence of using this option was not a graceful degradation in performance but a complete lockup of the application. The scenario in which we created a moderate number of abandoned connections was a rare error scenario but a valid test.
    How could this not be a bug in the Oracle driver? Is dead-lock a desireable outcome of using an option? Is dead-lock ever an acceptable consequence of using a feature as documented?
    Turns out other Oracle options to recover from an unexpected error also incur a similar deadlock (TimeToLiveTimeout).
    I did a code review of the decompiled drivers and it clearly shows the issue, confirming the original report of this issue. Perhaps you have evidence to the contrary or better evidence to support your statement "not a bug in Oracle"?
    Perhaps you are one of the very few people who have not experience problems with Oracle drivers? I've been using Oracle since 7.3.4 and it seems that I have always been working around Oracle JDBC driver problems.
    We are using Tomcat with the OracleDataSourceFactory.

  • Error while using jdbc pool

    Hi ,
    I tried to create an oracle pool by admin server. When I tried to ping it I got an error something like the cache name is already used.
    When I tried to use it in my code I got another error :
    'java.lang.ClassCastException: com.sun.gjc.spi.DataSource cannot be cast to oracle.jdbc.pool.OracleDataSource'
    The pool properties I used are :
    Url : dbc:oracle:thin:@servername:port:dbname
    DataSourceName: OracleDataSource
    ConnectionCacheName: cache2
    ConnectionCachingEnabled: true
    The code I used to get the connection :
    OracleDataSource poolConnDs = null;
    Connection poolConn = null;
    try{
    InitialContext jdbcContext = new InitialContext();
    poolConnDs = (OracleDataSource)jdbcContext.lookup("java:comp/env/jdbc/jndi_pool_name");
    poolConn = poolConnDs.getConnection();
    ResultSet res = poolConn.createStatement().executeQuery("Select * from my_table");
    }catch(Exception e){
    e.printStackTrace();
    }finally{
    try{
    poolConn.close();
    }catch(Exception e){
    e.printStackTrace();
    Can anybody help me ??
    Thanx in advance

    You should not be using com.sun.appserv.jdbc.DataSource in your code.
    Neither OracleDataSource.
    Change your code from
    "poolConnDs = (OracleDataSource)jdbcContext.lookup("java:comp/env/jdbc/jndi_pool_name");"
    to
    "poolConnDs = (javax.sql.DataSource)jdbcContext.lookup("java:comp/env/jdbc/jndi_pool_name");"
    Hope this works.
    Thanks,
    -Jagadish

  • Number of connections in a JDBC pool

    Hi,
    I am running Sun One Webserver 6.1SP4 on Solaris 8 on sparc machines. My web app interacts with Oracle 9.2 using the web server's jdbc pooling mechanism. Everything works fine, but what worries me is the number of connections always goes up even during nights when the traffic is considerably low compared to day time. Here is part of my server.xml relevant to the pool.
    <JDBCCONNECTIONPOOL name="spfc-dbp1" datasourceclassname="oracle.jdbc.pool.OracleDataSource" steadypoolsize="8" maxpoo
    lsize="80" poolresizequantity="8" idletimeout="300" maxwaittime="10000" connectionvalidationrequired="on" connectionvalidati
    onmethod="auto-commit" validationtablename="" failallconnections="off" transactionisolationlevel="read-committed" isolationl
    evelguaranteed="on">
    I checked all my code to make sure I am calling close() on result sets, statements and the connection itself both immediately after completing work as well as in the finally blocks.
    The only mechanism I have to bring down the number of connections is to restart the web server. I played around with the poolresizequantity, idletimeout properties, but it didn't help much.
    I thank all of you in advance for any insights.
    -Sharma

    Hi Sharma,
    I have a similar problem.
    Starting my portal and it works for about ten minutes. Then it is unreachable, because of an ProfileException error. I guess it is too many DB Connections.
    I can do 2 things:
    - wait for about 20minutes and it works again for ten minutes, or
    - restart tomcat.
    Currently I am setting up a new Connection Pool, Jdbc2Pool.
    Did you find a solution to your problem?
    Ciao,
    Axel

  • Error message when using "import oracle.jdbc.pool.OracleDataSource;" stmt

    hello Guys I have Written a Servlet program. It contains Some JDBC Code. When I try to import a Package "import oracle.jdbc.pool.OracleDataSource;" It was showing an error message saying that that particuler package does not exist.Could you please tell me what shall I do to import that package?

    Add classes12.jar in your classpath S
    --Balaji S                                                                                                                                                                                                               

  • JDBC pooling Oracle driver Socket read timed out

    I run Java EE application on Glassfish server v3 together with Oracle 12 DB on the same machine under Windows Server 2012 64bit. I use latest ojdbc7 driver.
    Connection pool config:
      <jdbc-connection-pool validation-table-name="DUAL" steady-pool-size="20" statement-cache-size="100" associate-with-thread="true" statement-timeout-in-seconds="30" idle-timeout-in-seconds="60" max-wait-time-in-millis="2000" validate-atmost-once-period-in-seconds="20" datasource-classname="oracle.jdbc.pool.OracleDataSource" pool-resize-quantity="5" max-pool-size="60" res-type="javax.sql.DataSource" name="dbPool" is-connection-validation-required="true">
      <property name="driverClass" value="oracle.jdbc.OracleDriver"></property>
      <property name="user" value="xxx"></property>
      <property name="url" value="jdbc:oracle:thin:@(DESCRIPTION=(ENABLE=BROKEN)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))"></property>
      <property name="password" value="xxx"></property>
      <property name="portNumber" value="1521"></property>
      <property name="databaseName" value="orcl"></property>
      <property name="serverName" value="127.0.0.1"></property>
      <property name="oracle.jdbc.ReadTimeout" value="300000"></property>
      <property name="oracle.net.CONNECT_TIMEOUT" value="10000"></property>
      </jdbc-connection-pool>
    After 2 or 3 hours, when there is more than 1 user (3-5) using my application, it stops responding and I get this in glassfish logs
      javax.enterprise.resource.resourceadapter.com.sun.enterprise.resource.allocator|_ThreadID=152;_ThreadName=Thread-2;|RAR5038:Unexpected exception while creating resource for pool dbPool. Exception : javax.resource.spi.ResourceAllocationException: Connection could not be allocated because: IO Error: Socket read timed out
      Local Exception Stack:
      Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException
      Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: IO Error: Socket read timed out
    From the database side it looks like this
    Fatal NI connect error 12560, connecting to:
      (LOCAL=NO)
      VERSION INFORMATION:
      TNS for 64-bit Windows: Version 12.1.0.1.0 - Production
      Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 12.1.0.1.0 - Production
      Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 12.1.0.1.0 - Production
      Time: 13-JUN-2014 03:14:49
      Tracing not turned on.
      Tns error struct:
      ns main err code: 12560
      TNS-12560: TNS:protocol adapter error
      ns secondary err code: 0
      nt main err code: 0
      nt secondary err code: 0
      nt OS err code: 0
      opiodr aborting process unknown ospid (3404) as a result of ORA-609
    When I just reset db listener everything works ok for next 1-2 hours (depends on application load). So temporary solution is to run bat script from windows scheduler to reset the listener every 1h.
    I tried everything I could find - applied these parameters:
      - Sqlnet.ora:
      SQLNET.INBOUND_CONNECT_TIMEOUT=180
      SQLNET.EXPIRE_TIME=5
      - Listener.ora:
      INBOUND_CONNECT_TIMEOUT_LISTENER_IPC=120
    But still without success

    Is the problem here just that you need a connection pool that closes idle connections?  Some pools will close idle connections after a time out period.  And the pool lets you set that time out period.  If the pool you are using doesn't provide that then use a different pool.

  • Which BC4J / JDBC pooling configurations are global for a JVM?

    There are several documents and postings saying that some of the BC4J / JDBC Pooling properties are unique for the JVM.
    So if i have 3 WAR files with 3 different settings in bc4j.xcfg (transaction factory, pooling settings) some of the settings are ignored after the first AM Pool is instanciated. This could be the reason for some "unreproducable" problems we have.
    So please provide us a list, which properties additional to the ones below are global per JVM and which are really used from the bc4j.xcfg.
    1. Getting the Connection object out of ApplicationModule says about the TransactionFactory
    Please not that this property is a static BC4J property. Meaning that the value of this property when the first ApplicationModule is created is the value which will be used. If you have multiple ApplicationPool(s) then it is necessary to define the property in all configurations, dynamically, or as a system property.
    2. http://www.oracle.com/technology/products/jdev/tips/muench/ampooling/index.html says about jbo.ampool.monitorsleepinterval
    Since there is only a single application monitor pool monitor per Java VM, the value that will effectively be used for the AM pool monitor polling interval will be the value found in the AM configuration read by the first AM pool that gets created. To make sure this value is set in a predictable way, it is best practice for all application modules to use the same Pool Polling Interval value.
    and
    3. Since the tuning parameters for all ADF database connection pools - regardless of <JDBCURL,Username> value - will be set based on the parameters found in the configuration for the first AM pool that is created. To insure the most predictable behavior, it is best practice to leave the values of the parameters in the Connnection Pooling section of the Pooling and Scalability tab at their default values - so that no entry for them is written into the bc4j.xcfg file - and to instead set the desired values for the database connection pooling tuning parameters as Java System Parameters in your J2EE container.
    Sounds like this means the parameters: jbo.initpoolsize, jbo.maxpoolsize, jbo.poolmonitorsleepinterval, jbo.poolmaxavailablesize, jbo.poolminavailablesize, jbo.poolmaxinactiveage ?
    4. And http://oracle-web.petersons.com/bc4jdoc/bc_aappmodpooling.htm tells There is one connection pool manager for each business logic tier's Java VM. Connections remain in the pool until the Java VM stops running.
    Thanks, Markus

    Just another funny observation regarding BC4J parameter settings in 9.0.5.2:
    Setting jbo.ampool.sessioncookiefactoryclass in the jboserver.properties is ignored. Setting in bc4j.xcfg works.
    rgds, Markus

  • Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/pool

    I have the following configuration:
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining options
    on a Suse 10.1 Linux.
    The javaversion is Java.Version = 1.4.2_11
    The classpath does look like:
    Eisele@brezn:~/FH-Weihenstephan/Winter_Semester_200809/Uebungen> echo $CLASSPATH
    /derby.jar:/derbytools.jar:/derbynet.jar:/derbyclient.jar:/derbyTesting.jar:/local/derby/tools/java/jakarta-oro-2.0.8.jar:/derbyLocale_de_DE.jar:/derbyLocale_es.jar:/derbyLocale_fr.jar:/derbyLocale_it.jar:/derbyLocale_ja_JP.jar:/derbyLocale_ko_KR.jar:/derbyLocale_pt_BR.jar:/derbyLocale_zh_CN.jar:/derbyLocale_zh_TW.jar:/oracle/oracle/product/10.2.0/db_1/jdbc/lib/classes12.jar:/oracle/oracle/product/10.2.0/db_1/jdbc/lib/classes12.zip:/oracle/oracle/product/10.2.0/db_1/jlib/orai18n.jar:/oracle/oracle/product/10.2.0/db_1/jdbc/lib/ojdbc14.jar:/home/Eisele/Oracle/ojdbc14.jar:/home/Eisele/FH-Weihenstephan/Winter_Semester_200809/Uebungen
    Eisele@brezn:~/FH-Weihenstephan/Winter_Semester_200809/Uebungen>
    The Program JDBCVersion.java which I copied out of the Oracle-Documentation looks like:
    import java.sql.*;
    import oracle.jdbc.*;
    import oracle.jdbc.pool.OracleDataSource;
    class JDBCVersion
    public static void main (String args[]) throws SQLException
    System.out.println("Java.Version = " + System.getProperty("java.version")) ;
    OracleDataSource ods = new OracleDataSource();
    ods.setURL("jdbc:oracle:thin:scott/tiger@host:port:service");
    Connection conn = ods.getConnection();
    // Create Oracle DatabaseMetaData object
    DatabaseMetaData meta = conn.getMetaData();
    // gets driver info:
    System.out.println("JDBC driver version is " + meta.getDriverVersion());
    I get the following error
    Eisele@brezn:~/FH-Weihenstephan/Winter_Semester_200809/Uebungen> javac JDBCVersion.java
    Eisele@brezn:~/FH-Weihenstephan/Winter_Semester_200809/Uebungen> java -cp ~/FH-Weihenstephan/Winter_Semester_200809/Uebungen/ JDBCVersion
    Java.Version = 1.4.2_11
    Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/pool/OracleDataSource
    at JDBCVersion.main(JDBCVersion.java:10)
    Eisele@brezn:~/FH-Weihenstephan/Winter_Semester_200809/Uebungen>
    Can anyone help me out here and tell me, what I did wrong ?
    Thanks in advance !
    Rüdiger

    Two thoughts.
    The first is that 10.2.0.1 is unpatched. Why? It has been two years since its release and no one has applied 10.2.0.2, 10.2.0.3 or 10.2.0.4.
    The second is that your question is not a database question but a Java question is you are more likely to get an answer that will help you if you post in a group where it is on-topic.

  • Oracle.jdbc.pool.OracleDataSource; local class incompatible

    I want to place a DataSource in a InitialContext with the following code
    public void getEnvironment() throws Exception{ try{ System.setProperty(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); /*System.setProperty(Context.PROVIDER_URL, "t3://127.0.0.1:7001"); System.setProperty(Context.SECURITY_PRINCIPAL, "weblogic"); System.setProperty(Context.SECURITY_CREDENTIALS, "password");*/ InitialContext ic = new InitialContext(); ic.createSubcontext("java:"); ic.createSubcontext("java:/comp"); ic.createSubcontext("java:/comp/env"); ic.createSubcontext("java:/comp/env/jdbc"); // Construcvt Datasource OracleConnectionPoolDataSource ds = new OracleConnectionPoolDataSource(); ds.setURL("jdbc:oracle:thin:@cdcehr29:14985"); ds.setUser("user"); ds.setPassword("pwd"); //Connection conn = ds.getConnection(); ic.bind("java:/comp/env/jdbc/test", ds); System.out.println("see?"); Context envIc = (Context) ic.lookup("java:/comp/env"); envIc.bind("THIS_SERVICE_CD", ""); envIc.bind("THIS_SERVICE_VER", ""); envIc.bind("SERVICE_DATA_SOURCE_JNDI", "jdbc/test"); envIc.bind("ALS_PROJECT_CD", ""); envIc.bind("ALS_SYSTEM_CD", ""); envIc.bind("EHR_CONFIG_DATA_SOURCE_JNDI", ""); envIc.bind("SGR_PATH", ""); envIc.bind("AUDIT_TABLE_NAME", ""); envIc.bind("DEBUG_TABLE_NAME", ""); }catch(NamingException ex){ ex.printStackTrace(); }catch(Exception ex){ ex.printStackTrace(); } }
    but the following error is shown (but not catch in catch block, very strange)
    >
    <Jun 26, 2012 6:17:02 PM CST> <Error> <RJVM> <BEA-000503> <Incoming message header or abbreviation processing failed
    java.io.InvalidClassException: oracle.jdbc.pool.OracleDataSource; local class incompatible: stream classdesc serialVersionUID = 8680830911645568991, local class serialVersionUID = 3349652938965166731
    java.io.InvalidClassException: oracle.jdbc.pool.OracleDataSource; local class incompatible: stream classdesc serialVersionUID = 8680830911645568991, local class serialVersionUID = 3349652938965166731
    at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
    at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583)
    at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1316)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
    Truncated. see log file for complete stacktrace
    >
    what is the problem come from?

    >
    but the following error is shown (but not catch in catch block, very strange)
    >
    <Jun 26, 2012 6:17:02 PM CST> <Error> <RJVM> <BEA-000503> <Incoming message header or abbreviation processing failed
    java.io.InvalidClassException: oracle.jdbc.pool.OracleDataSource; local class incompatible: stream classdesc serialVersionUID = 8680830911645568991, local class serialVersionUID = 3349652938965166731
    java.io.InvalidClassException: oracle.jdbc.pool.OracleDataSource; local class incompatible: stream classdesc serialVersionUID = 8680830911645568991, local class serialVersionUID = 3349652938965166731
    at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
    at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583)
    at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1316)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
    Truncated. see log file for complete stacktrace
    what is the problem come from?
    >
    You didn't post the part of the stacktrace that shows the line number that the problem occured on. (Truncated. see log file for complete stacktrace)
    Are you sure the problem occured in the code you posted? If so did this line execute and print on the console?
    System.out.println("see?");That error can occur when the code used to deserialize an object uses a different version of the class than the version it was serialized with. The code you posted doesn't shown anything that appears to do any deserialization.
    Have their been any changes to the environment lately? Upgrades to Java version, WebLogic or the JDBC driver?

  • Connection Pool using weblogic.jdbc.pool.Driver

    I am trying to use connection pooling in my JSP data access classes (which
    work fine without connection pooling) on weblogic 4.5.1. I tried using the
    weblogic.jdbc.pool.Driver but it exits with the following exception:
    java.lang.ClassNotFoundException: weblogic.jdbc.pool.Driver
    The path c:\weblogic\classes which contains this driver is specified in the
    weblogic.class.path . I can not include it in the java class path because
    then weblogic server fails to start at all (with an error message). I would
    appreciate any help !
    Thanks,
    Usamah

    Hi. Please don't repost identical posts to different news groups. See a response
    in the JDBC group. thanks, joe
    Usamah Malik wrote:
    I am trying to use connection pooling in my JSP data access classes (which
    work fine without connection pooling) on weblogic 4.5.1. I tried using the
    weblogic.jdbc.pool.Driver but it exits with the following exception:
    java.lang.ClassNotFoundException: weblogic.jdbc.pool.Driver
    The path c:\weblogic\classes which contains this driver is specified in the
    weblogic.class.path . I can not include it in the java class path because
    then weblogic server fails to start at all (with an error message). I would
    appreciate any help !
    Thanks,
    Usamah--
    PS: Hey folks, we're hiring Java engineers for our WebLogic
    Engineering group in downtown S.F. Send me your resume.
    The Weblogic Application Server from BEA
    JavaWorld Editor's Choice Award: Best Web Application Server
    Java Developer's Journal Editor's Choice Award: Best Web Application Server
    Crossroads A-List Award: Rapid Application Development Tools for Java
    Intelligent Enterprise RealWare: Best Application Using a Component Architecture
    http://weblogic.beasys.com/press/awards/index.htm

  • Java.io.notSerializableException:weblogic.jdbc.pool.Connection

    Hello,
              In my servelts only sometime I get this exception. I am using WLS7.0 jDK
              1.3.1(the one which comes with WLS7.0). I am using Java Beans which are all
              serializable.(I have declared that the classes implements Serilizable)
              Exception is as follows
              <Jan 27, 2003 4:19:09 AM EST> <Error> <HTTP Session> <triton>
              <AccupacServer> <ExecuteThread: '8' for queue: 'default'> <kernel identity>
              <> <100028> <Could not deserialize session data>
              java.io.NotSerializableException: weblogic.jdbc.pool.Connection
              at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1143)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
              at
              java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1822)
              at
              java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:475)
              at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1209)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
              at
              weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:9
              1)
              at
              weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:6
              6)
              at
              weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
              va:570)
              at
              weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
              va:552)
              at
              weblogic.servlet.internal.session.SessionData.remove(SessionData.java:734)
              at
              weblogic.servlet.internal.session.MemorySessionContext.invalidateSession(Mem
              orySessionContext.java:51)
              at
              weblogic.servlet.internal.session.SessionContext$SessionInvalidator$Invalida
              tionAction.run(SessionContext.java:523)
              at
              weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
              r.java:744)
              at
              weblogic.servlet.internal.session.SessionContext$SessionInvalidator.cleanupE
              xpiredSessions(SessionContext.java:444)
              at
              weblogic.servlet.internal.session.SessionContext.deleteInvalidSessions(Sessi
              onContext.java:81)
              at
              weblogic.servlet.internal.session.SessionContext$SessionInvalidator.trigger(
              SessionContext.java:392)
              at
              weblogic.time.common.internal.ScheduledTrigger.run(ScheduledTrigger.java:181
              at
              weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
              r.java:744)
              at
              weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigg
              er.java:167)
              at
              weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java
              :161)
              at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java:38)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
              Any help appreciated.
              Thanks
              Madhu
              

    Hello,
              In my servelts only sometime I get this exception. I am using WLS7.0 jDK
              1.3.1(the one which comes with WLS7.0). I am using Java Beans which are all
              serializable.(I have declared that the classes implements Serilizable)
              Exception is as follows
              <Jan 27, 2003 4:19:09 AM EST> <Error> <HTTP Session> <triton>
              <AccupacServer> <ExecuteThread: '8' for queue: 'default'> <kernel identity>
              <> <100028> <Could not deserialize session data>
              java.io.NotSerializableException: weblogic.jdbc.pool.Connection
              at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1143)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
              at
              java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1822)
              at
              java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:475)
              at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1209)
              at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
              at
              weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:9
              1)
              at
              weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:6
              6)
              at
              weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
              va:570)
              at
              weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
              va:552)
              at
              weblogic.servlet.internal.session.SessionData.remove(SessionData.java:734)
              at
              weblogic.servlet.internal.session.MemorySessionContext.invalidateSession(Mem
              orySessionContext.java:51)
              at
              weblogic.servlet.internal.session.SessionContext$SessionInvalidator$Invalida
              tionAction.run(SessionContext.java:523)
              at
              weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
              r.java:744)
              at
              weblogic.servlet.internal.session.SessionContext$SessionInvalidator.cleanupE
              xpiredSessions(SessionContext.java:444)
              at
              weblogic.servlet.internal.session.SessionContext.deleteInvalidSessions(Sessi
              onContext.java:81)
              at
              weblogic.servlet.internal.session.SessionContext$SessionInvalidator.trigger(
              SessionContext.java:392)
              at
              weblogic.time.common.internal.ScheduledTrigger.run(ScheduledTrigger.java:181
              at
              weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
              r.java:744)
              at
              weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigg
              er.java:167)
              at
              weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java
              :161)
              at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java:38)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
              Any help appreciated.
              Thanks
              Madhu
              

  • Getting SSL Certificates to JDBC Pool

    Is it possible to make container managed JDBC-pool with proxy authentication to Oracle Database using certificate obtained from request object?
    I mean, define a connection factory for oracle database and supply at configuration time that certificate proxy property should be taken from request object?
    Is it possible or it is theoritically wrong to use that scheme?

    Is it possible to make container managed JDBC-pool with proxy authentication to Oracle Database using certificate obtained from request object?
    I mean, define a connection factory for oracle database and supply at configuration time that certificate proxy property should be taken from request object?
    Is it possible or it is theoritically wrong to use that scheme?

Maybe you are looking for