Re: WebLogic RDB jdbc problem

Hi Joe,
I tried the two things you asked:
1. Setting the initial and max capacity of the Connection Pool to 1 does not make
any further difference, the reselt set is still sometimes empty.
2. If I use the code from the stand-alone application (thus if I get the connection
directly from the driver) than I get a good result: the retrieved result set is,
as far as I can see, always correctly filled.
In addition I tried to cast the Connection to WLConnection and then get the vendor
connection from it, and than to proceed with this connection further on, but this
did not make it any better.
Almir.
Joe Weinstein <[email protected]> wrote:
>
>
Almir wrote:
Hi Joe,
thanks for your quick answer to my questions. I red your sugestionsand tried
them out but unfortunately it did not make me come any further in searchfor answer
to this odd problem. Setting the statement cache size to 0 (I've alreadytried
this before your response) did not make any difference at all. Refreshingthe
statement before reuse neighter.
I also tried to make the stand-alone application to go wrong. But nomatter whether
I reuse connection and/or statement or whether I instantiate the newones every
time, the execution of the statement always comes back with a validand filled
ResultSet.
Interesting thing to mention aboout executing the statement withinthe server
is that if I put it in a loop of let say 100 repeats, it succeeds orit fails
all 100 times. Next time i execute this bean method where the loopis situated
it will again succeed or fail all 100 times. It remains consequentwithin the
same loop/bean method. Even if I get the data source and the connectionevery
time again (100 times) it remains consequent. Thi is maybe interestingfinding
but it does not say anything to me. Perhaps you can make some conclusionsout
of it.
Best regards,
Almir.Hmmmmm.... Interesting. The only other thing I can suspect is that the
driver
is not threadsafe... Would you try these two experiments?
1 - Alter the weblogic server to define the pool to have only one connection,
ie: initial capacity = 1 and max capacity = 1. Let me know if the
problem
is still there.
2 - Alter the application code you run in the server to get a connection
directly
from the driver, just like the standalone code.
Let me know...
Joe
Joe Weinstein <[email protected]> wrote:
Hi Almir.
I highly suspect the RDB driver of a bug where re-using a given Prepared
Statement
will sometimes produce an empty result set. Weblogic will cache your
prepared statements
so when you call prepareStatement() we may transparently return you
a
previously-used
statement for the same SQL and arguments.
To prove my theory, please do these two things:
1 - Define your pool's statement cache to be of size zero. This should
make the problem
go away.
2 - In a standalone program, you can create a given PreparedStatement,
and rerun it in
a loop, and see if it ever returns an empty result set. I will showyou
how to include
the code we do to refresh the statement before reuse:
try
Class.forName ("oracle.rdb.jdbc.rdbThin.Driver");
Connection conn = DriverManager.getConnection("jdbc:rdbThin://<database_name>","<user>",
"<pass>");
String sqlStatement = "SELECT TABEL1.COLUMN1, TABEL1.COLUMN2,
TABEL2.COLUMN1
FROM TABEL1, TABEL2 WHERE (TABEL2.COLUMN2= TABEL1.COLUMN3) AND (TABEL2.COLUMN1
= ?)ORDER BY TABEL1.COLUMN1";
PreparedStatement ps = conn.prepareStatement(sqlStatement,
ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
for (int i = 0; i < 100; i++)
ps.setObject(1, new Integer(1));
boolean result = ps.execute();
ResultSet rs = ps.getResultSet();
// check result set here
rs.close();
cleanUpStatementForReUse(ps);
ps.close();
conn.close();
catch (Exception ex)
System.out.println(ex);
private void cleanUpStatementForReUse(PreparedStatement p)
try { p.clearParameters(); p.clearBatch(); } catch (Throwable ignore)
try { p.setEscapeProcessing(true); } catch (Throwable ignore) {}
try
if (p.getFetchDirection() != ResultSet.FETCH_FORWARD)
p.setFetchDirection(ResultSet.FETCH_FORWARD);
} catch (Throwable ignore) {}
try
if (p.getFetchSize() != 0)
p.setFetchSize(0);
} catch (Throwable ignore) {}
try
if (p.getMaxFieldSize() != 0)
p.setMaxFieldSize(0);
catch (Throwable ignore) {}
try
if (p.getMaxRows() != 0)
p.setMaxRows(0);
catch (Throwable ignore) {}
try
if (p.getQueryTimeout() != 0)
p.setQueryTimeout(0);
catch (Throwable ignore) {}
try
p.clearWarnings();
catch (Throwable ignore) {}
Almir wrote:
Hello everybody,
we are developing an application for Bea WebLogic Application Server8.1. This
application uses data from an existing database. This is an OracleRDB 7-1.220
database. Because the WebLogic AS does not include a JDBC driver forthis type
of database we got one from Oracle: RDBJDBC71. I installed this driverand tested
it by using a standalone Java application which executes a number
of
SQL statemens.
This test was satisfying, no problems occured.
Then, in order to use it within the application server, I defined
a
JDBC Connection
Pool in WebLogic with corresponding Data Source. And it worked, ourapplication
could connect with the database and execute the needed transactions.
But after a while we noticed a realy strange problem. When a particularSELECT
SQL stament is executed we expect a list of 6 records as result. Butsometimes
the returned resultset is just empty. I tried this hundreds of times.No error
or exception occurs but sometimes the response is correct and sometimesnot.
In the first place we thought that the JDBC driver was causing thisproblem but
then I executed the same SQL Select statement within a Java stand-aloneapplication
(and not using the Application Server) and the result was correct.Repeating this
hundreds of times did not change the outcome, the given resultset
was
always correct.
I tried reconfigurating the Connection Pool in different ways but
it
did not make
any difference: sometimes it worked and sometimes it didn't.
Here below you can see the code samples of both implementations.
Stand-alone:
try
Class.forName ("oracle.rdb.jdbc.rdbThin.Driver");
Connection conn = DriverManager.getConnection("jdbc:rdbThin://<database_name>","<user>",
"<pass>");
String sqlStatement = "SELECT TABEL1.COLUMN1, TABEL1.COLUMN2,TABEL2.COLUMN1
FROM TABEL1, TABEL2 WHERE (TABEL2.COLUMN2= TABEL1.COLUMN3) AND (TABEL2.COLUMN1
= ?)ORDER BY TABEL1.COLUMN1";
PreparedStatement ps = conn.prepareStatement(sqlStatement,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ps.setObject(1, new Integer(1));
boolean result = ps.execute();
ResultSet rs = ps.getResultSet();
// Result set is here always filled!!!!
rs.close();
ps.close();
conn.close();
catch (Exception ex)
System.out.println(ex);
Application server:
try
Context ctx = new InitialContext();
Object object = ctx.lookup(data_store_name);
DataStore ds = (DataStore)object;
Connection conn = ds.getConnection();
String sqlStatement = "SELECT TABEL1.COLUMN1, TABEL1.COLUMN2,TABEL2.COLUMN1
FROM TABEL1, TABEL2 WHERE (TABEL2.COLUMN2= TABEL1.COLUMN3) AND (TABEL2.COLUMN1
= ?)ORDER BY TABEL1.COLUMN1";
PreparedStatement ps = (PreparedStatement)conn.prepareStatement(sqlStatement,
ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ps.setObject(1, new Integer(1));
boolean result = ps.execute();
ResultSet rs = ps.getResultSet();
// Result set is here sometimes empty !!!!
rs.close();
ps.close();
conn.close();
catch (Exception ex)
System.out.println(ex);
Any sugestions are welcome.
Thanks.
Almir.

I have had the same problem as you with sporadic results for queries with RDB Drivers. Were you able to solve it and if so how?
Sam Opoku-Boadu

Similar Messages

  • Remote JDBC Problem with Oracle BPM Studio

    Hi all, i am facing the Remote JDBC Problem with Oracle BPM Studio.
    When i configure a Remote JDBC Connection for SQL in BPM Studio, it prompt me an error.
    The SQL Connection is configured as following :
    External Resource:
    Name : MyDS
    Type : SQL Database
    Supported Types : Remote JDBC
    Details:
    Database Type : BPM's Oracle Driver Version:10, 11
    J2EE : WLS
    Lookup Name : MyAppDS
    Configuration for "WLS"
    Name : WLS
    Type : J2EE Application Server
    Supported Types : GENERIC_J2EE
    Details:
    Initial Context Factory : weblogic.jndi.WLInitialContextFactory
    URL : t3://localhost:7001
    But, when i try to connect to the Database by using this configuration, I will get an Exception.
    An exception occurred while getting a resource from a connector.
    Detail:The connector [[ MyDS : SQL : REMOTE_JDBC ]] caused an exception when getting a resource.
    Caused by: An exception occurred while getting a resource from a connector.
    Detail:The connector [[ WLS : J2EE : J2EE ]] caused an exception when getting a resource.
    Caused by: javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [[ Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory ]]
         at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
         at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
         at javax.naming.InitialContext.init(InitialContext.java:223)
         at javax.naming.InitialContext.<init>(InitialContext.java:197)
         at fuego.jndi.FaultTolerantContext.createContext(FaultTolerantContext.java:726)
         at fuego.jndi.FaultTolerantContext.<init>(FaultTolerantContext.java:79)
         at fuego.connector.impl.GenericJ2EEConnector.createInitialContext(GenericJ2EEConnector.java:177)
         at fuego.connector.impl.GenericJ2EEConnector.createStandaloneContext(GenericJ2EEConnector.java:98)
         at fuego.connector.impl.BaseJ2EEConnector.getResource(BaseJ2EEConnector.java:92)
         at fuego.connector.impl.BaseJ2EEConnector.getResource(BaseJ2EEConnector.java:76)
         at fuego.connector.J2EEHelper.getReadOnlyContext(J2EEHelper.java:86)
         ... 12 more
    Edited by: user2262377 on Jun 22, 2009 4:01 PM

    I guess the weblogic.jar is not included in the studio.
    So, i added weblogic.jar (Weblogic 10.3) and wlclient.jar (Weblogic 10.3)
    It is working in my simple java code. But, still not working in BPM Studio.
    The error logs:
    An exception occurred while getting a resource from a connector.
    Detail:The connector [OFT_APP_DS:SQL:REMOTE_JDBC] caused an exception when getting a resource.
    Caused by: java.lang.Object cannot be cast to java.io.Serializable
    fuego.connector.ConnectorException: An exception occurred while getting a resource from a connector.
    Detail:The connector [OFT_APP_DS:SQL:REMOTE_JDBC] caused an exception when getting a resource.
         at fuego.connector.ConnectorException.exceptionOnGetResource(ConnectorException.java:88)
         at fuego.connector.JDBCHelper.getReadOnlyConnection(JDBCHelper.java:93)
         at fuego.sqlintrospector.BrowserPanel.connect(BrowserPanel.java:395)
         at fuego.sqlintrospector.BrowserPanel.populateTree(BrowserPanel.java:200)
         at fuego.ui.wizards.ui.CheckTreeBrowser$1.construct(CheckTreeBrowser.java:63)
         at fuego.ui.SwingWorker$2.run(SwingWorker.java:39)
         at java.lang.Thread.run(Thread.java:619)
    Caused by: java.lang.ClassCastException: java.lang.Object cannot be cast to java.io.Serializable
         at weblogic.iiop.IIOPOutputStream.writeAny(IIOPOutputStream.java:1588)
         at weblogic.iiop.IIOPOutputStream.writeObject(IIOPOutputStream.java:2231)
         at weblogic.utils.io.ObjectStreamClass.writeFields(ObjectStreamClass.java:413)
         at weblogic.corba.utils.ValueHandlerImpl.writeValueData(ValueHandlerImpl.java:235)
         at weblogic.corba.utils.ValueHandlerImpl.writeValueData(ValueHandlerImpl.java:225)
         at weblogic.corba.utils.ValueHandlerImpl.writeValue(ValueHandlerImpl.java:182)
         at weblogic.iiop.IIOPOutputStream.write_value(IIOPOutputStream.java:1963)
         at weblogic.iiop.IIOPOutputStream.write_value(IIOPOutputStream.java:2001)
         at weblogic.iiop.IIOPOutputStream.writeObject(IIOPOutputStream.java:2266)
         at weblogic.jdbc.common.internal.RmiDataSource_WLSkel.invoke(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
         at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
         at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
         at weblogic.security.service.SecurityManager.runAs(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
         at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

  • RDB BLOB problem

    Hi.
    I have problem writing blob into RDB database table via JDBC driver. I use setBinarySteam() or setBytes() method in PreparedStatement.
    If table has NOT NULL constraint on blob-field I'm trying to write JDBC driver throws exception:
    java.sql.SQLException: in <rdbjdbcsrv:execute_into>
    %RDB-E-INTEG_FAIL, violation of constraint NEW_BLOB_TABLE_NOT_NULL1 caused operation to fail
    -RDB-F-ON_DB, on database DKB1:[PRO_DB.MB_DATABASE]MB.RDB;1
    @rdb.Client.ExecuteInsert
         at oracle.rdb.jdbc.common.BasicClient.throwException(BasicClient.java:1049)
         at oracle.rdb.jdbc.common.BasicClient.throwException(BasicClient.java:1014)
         at oracle.rdb.jdbc.common.Client.ExecuteInsert(Client.java:498)
         at oracle.rdb.jdbc.rdbThin.Rdb.ExecuteInsert(Rdb.java:332)
         at oracle.rdb.jdbc.common.ResultSet.doStatement(ResultSet.java:5894)
         at oracle.rdb.jdbc.common.PreparedStatement.execute(PreparedStatement.java:1331)
         at oracle.rdb.jdbc.common.PreparedStatement.executeUpdate(PreparedStatement.java:399)
         at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)
         at ru.teleform.reportgenerator.db.ReportBroker.setBinaryStream(ReportBroker.java:188)
         at ru.teleform.reportgenerator.servlets.test.doPost(test.java:18)
         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:269)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
         at java.lang.Thread.run(Thread.java:619)
    But if there is no constraint on this field everyyhing is ok. I'm using thin JDBC-driver.
    I don't know what to do.

    No, I'm not trying to set null value to this field.
    For experiment I created two similar tables. One was created with NOT NULL constraint for blob column and the other one without.
    And I execut identical insert-query on both of them. With first table query throws exception. And with second one everything is fine, query inserts correct data into this table.

  • Weblogic 10.0 Problems with stripes/struts

    When trying to deploy the sample application for the stripes framework on weblogic 10.0 I get the following error when deploying.
    <Dec 3, 2009 12:16:51 PM CET> <Error> <HTTP> <BEA-101165>
    <Could not load user defined filter in web.xml:
    net.sourceforge.stripes.controller.StripesFilter.net.sourceforge.stripes.exception.StripesRuntimeException:
    Problem instantiating default configuration objects.I actually had to switch to using the Sun JDK to get this error. JRockit does not report it, and just fails when I try to use the application. The problem appear to be weblogic 10.0 specific. No problems with jetty or tomcat, and I've heard reports that it is resolved in weblogic 10.3. Have ayone come accross similar problems when using stripes/struts on weblogic 10.0, and found a solution to this? Is there a patch available for 10.0 than fix this?
    Regards
    Morten
    PS: I have ommited the complete stack trace, since it is monstrously huge.

    Guess I was wrong in thinking that this was an isolated weblogic 10.0 problem. I just downloaded weblogic 10.3 and tried to deploy the same application there, and the same error happened.
    <03.des.2009 kl 15.12 CET> <Error> <HTTP> <BEA-101165>
    <Could not load user defined filter in web.xml:
    net.sourceforge.stripes.controller.StripesFilter.net.sourceforge.stripes.exception.StripesRuntimeException:
    Problem instantiating default configuration objects.
            at net.sourceforge.stripes.config.DefaultConfiguration.init(DefaultConfiguration.java:220)
            at net.sourceforge.stripes.config.RuntimeConfiguration.init(RuntimeConfiguration.java:272)
            at net.sourceforge.stripes.controller.StripesFilter.init(StripesFilter.java:125)
            at weblogic.servlet.internal.FilterManager$FilterInitAction.run(FilterManager.java:329)
            at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
            Truncated. see log file for complete stacktrace
    java.lang.NullPointerException
            at java.io.FilterInputStream.read(FilterInputStream.java:116)
            at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:264)
            at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:306)
            at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:158)
            at java.io.InputStreamReader.read(InputStreamReader.java:167)
            Truncated. see log file for complete stacktraceSo is there anyone out there with experience with struts/stripes, that can tell why this does not work? If you need to try this yourself, you can download the stripes sample application here:
    http://sourceforge.net/projects/stripes/files/stripes/Stripes%201.5.2/stripes-1.5.2.zip/download
    There is an example WAR called "stripes-examples.war" in the zip that is ready to be deployed.
    Regards
    Morten
    PS: you still need to start weblogic with Sun JDK rather than JRockit to get the error. With JRockit the application simply fails when used.

  • Weblogic SQLServer JDBC error during Solaris to Linux migration

    We are in process of migrating our app from weblogic 92 on solaris to weblogic 92 on linux. Our app connects to a SQLServer db (SQL Server 2005) using a weblogic datasource configured with the weblogic sqlserver jdbc driver (weblogic.jdbc.sqlserver.SQLServerDriver)
    But we are getting the following error on linux, whereas the same code works fine in solaris:
    *[BEA][SQLServer JDBC Driver][SQLServer]The server failed to resume the transaction. Desc:3d00000019.*
    The <Desc:xxxx>keeps changing but rest of the error message remains the same. Any suggestions?
    I have tried searching the weblogic jdbc forums but no luck.

    Is this the same DBMS as is used in the working configuration?
    I'd like to see the whole stacktrace....

  • Unable to download Rdb JDBC driver

    Hi,
    On trying to download the Rdb JDBC 7.1.4.1 driver, takes me to the licensing page and then again back to the same page. There seems to be no content for download. Please advice.
    url :http://www.oracle.com/technology/software/products/rdb7/index.html

    Need a driver for Mac or Windows?
    For OS X v10.9 Mavericks >   http://www.epson.com/cgi-bin/Store/support/supDetail.jsp?oid=72106&infoType=Down loads
    Or here >   OS X: Printer and scanner software available for download
    .exe files are Windows only.

  • Weblogic 8.1 jdbc problem?

    Hello!
    I use Weblogic 8.1 on linux and Oracle 9.2 db server (I use thin driver)
    When I try to retrieve date fields from a table using java.sql.ResultSet's getDate function, some date come back altered to the application.
    For example if 1954.05.23 in the table and I use getDate I get back 1954.05.22.
    If I use getString function I get the right date.
    I checked this on Windos based Weblogic (same version) and there's no this problem.
    Anybody have any idea what did I wrong or how can I correct this?
    Thanx,
    Laszlo

    The problem is that you are using the Oracle JDBC Driver classes customised by Weblogic.
    This web page has sample on how to use the Weblogic Blob wrapper to get the output stream,
    http://support.bea.com/application_content/product_portlets/support_patterns/wls/CLOBBLOBDataTypeHandlingIssuesPattern.html
    replace
    outStream = ((OracleThinBlob)myRegularBlob).getBinaryOutputStream();with
    outStream = myRegularBlob.setBinaryStream(1);This is weblogic specific code. But if u want to use the generic one, instead of weblogic customised one, I think you should configure weblogic and create new Datasource using the Oracle JDBC Driver, and use it directly rather than depending on readymade Weblogic Datasource configuration for Oracle. , which makes use of the Weblogic wrappers.
    hope that helped.

  • JDBC Problems -- NoClassDefFoundError: weblogic/jdbc/wrapper/JTSConnection

     

    Ben Belchak wrote:
    Hi, newsgroup:
    I have been developing with the Workshop for about a month now, and everything has been going great until last week. I have been connected and able to retrieve data from our AS/400 using the jt400 drivers, but all of a sudden something happened that caused me to get the following error. If anybody can assist, it would be greatly appreciated.
    Some background: I have the JDBC JAR inside the classpath for my server, and it is loading it properly because I can test the connection pool from within the appserver's admin console.
    In appserver:
    java.lang.NoClassDefFoundError: weblogic/jdbc/wrapper/JTSConnectionHi. Did you get a response for this?
    Make sure you don't have the JDBC jar in the client classpath too. Just make
    sure it's in the server classpath. Let me know if that helps.
    Joe
    at java.lang.ClassLoader.defineClass(Ljava.lang.String;[BIILjava.securit
    y.ProtectionDomain;)Ljava.lang.Class;(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Ljava.lang.String;[BIILja
    va.security.CodeSource;)Ljava.lang.Class;(SecureClassLoader.java:123)
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(Ljava.l
    ang.String;)Ljava.lang.Class;(GenericClassLoader.java:476)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(Ljava.lang.S
    tring;)Ljava.lang.Class;(GenericClassLoader.java:181)
    at java.lang.ClassLoader.loadClass(Ljava.lang.String;Z)Ljava.lang.Class;
    (Unknown Source)
    Inside browser:
    An error has occurred:
    EJB Exception: ; nested exception is:
    weblogic.jws.control.ControlException: Exception in onAcquirecontext event handler[Context failure: onAcquire[Failed to Generate Wrapper Class.
    Nested Exception: java.lang.RuntimeException: Failed to Generate Wrapper Class
    at weblogic.utils.wrapper.WrapperFactory.createWrapper(Ljava.lang.Class;Ljava.lang.Object;Z)Ljava.lang.Object;(WrapperFactory.java:183)
    at weblogic.jdbc.wrapper.JDBCWrapperFactory.getWrapper(ILjava.lang.Object;Z)Ljava.lang.Object;(JDBCWrapperFactory.java:171)
    at weblogic.jdbc.jts.Driver.newConnection(Ljava.lang.String;Lweblogic.transaction.Transaction;Ljava.lang.String;)Lweblogic.jdbc.wrapper.JTSConnection;(Driver.java:737)
    at weblogic.jdbc.jts.Driver.createLocalConnection(Lweblogic.transaction.Transaction;Ljava.lang.String;Ljava.util.Properties;)Lweblogic.jdbc.wrapper.JTSConnection;(Driver.java:197)
    at weblogic.jdbc.jts.Driver.connect(Ljava.lang.String;Ljava.util.Properties;)Ljava.sql.Connection;(Driver.java:155)
    at weblogic.jdbc.common.internal.RmiDataSource.getConnection()Ljava.sql.Connection;(RmiDataSource.java:305)
    at com.bea.wlw.runtime.core.control.DatabaseControlImpl.getConnection()Ljava.sql.Connection;(DatabaseControlImpl.jcs:1424)
    at com.bea.wlw.runtime.core.control.DatabaseControlImpl.context_onAcquire()V(DatabaseControlImpl.jcs:1316)
    at jrockit.reflect.NativeMethodInvoker.invoke0(Ljava.lang.Object;ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang..Object;(Unknown Source)
    at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(DispMethod.java:367)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Ljava.lang.Object;Ljava.lang.String;Lcom.bea.wlw.runtime.core.dispatcher.DispMethod;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:423)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Lcom.bea.wlw.runtime.core.dispatcher.DispMethod;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:396)
    at com.bea.wlw.runtime.core.container.Invocable.fireEvent(Lcom.bea.wlw.runtime.core.context.WlwThreadContext;Ljava.lang.String;Ljava.lang.Object;Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:612)
    at com.bea.wlw.runtime.core.context.WlwThreadContext.sendEvent(Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(WlwThreadContext.java:980)
    at com.bea.wlw.runtime.core.context.WlwThreadContext.raiseEvent()Ljava.lang.Object;(WlwThreadContext.java:910)
    at com.bea.wlw.runtime.core.container.Container.raiseContextEvent()Ljava.lang.Object;(Container.java:567)
    at com.bea.wlw.runtime.jcs.container.JcsContainer.onAcquire()V(JcsContainer.java:529)
    at jrockit.reflect.NativeMethodInvoker.invoke0(Ljava.lang.Object;ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(DispMethod.java:367)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Ljava.lang.Object;Ljava.lang.String;Lcom.bea.wlw.runtime.core.dispatcher.DispMethod;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:423)
    at com.bea.wlw.runtime.core.container.Invocable.sendContextEvent(Ljava.lang.String;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:533)
    at com.bea.wlw.runtime.jcs.container.JcsContainer.sendContextEvent(Ljava.lang.String;[Ljava.lang.Object;)Ljava.lang.Object;(JcsContainer.java:480)
    at com.bea.wlw.runtime.jcx.container.JcxContainer.preInvoke(Lcom.bea.wlw.runtime.core.context.WlwThreadContext;Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.request.Request;(JcxContainer.java:110)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.dispatcher.InvokeResult;(Invocable.java:187)
    at com.bea.wlw.runtime.jcs.container.JcsContainer.invoke(Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.dispatcher.InvokeResult;(JcsContainer.java:84)
    at com.bea.wlw.runtime.core.bean.BaseContainerBean.invokeBase(Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.dispatcher.InvokeResult;(BaseContainerBean.java:198)
    caused by: : weblogic.jws.control.ControlException: Exception in onAcquirecontext event handler[Context failure: onAcquire[Failed to Generate Wrapper Class.
    Nested Exception: java.lang.RuntimeException: Failed to Generate Wrapper Class
    at weblogic.utils.wrapper.WrapperFactory.createWrapper(Ljava.lang.Class;Ljava.lang.Object;Z)Ljava.lang.Object;(WrapperFactory.java:183)
    at weblogic.jdbc.wrapper.JDBCWrapperFactory.getWrapper(ILjava.lang.Object;Z)Ljava.lang.Object;(JDBCWrapperFactory.java:171)
    at weblogic.jdbc.jts.Driver.newConnection(Ljava.lang.String;Lweblogic.transaction.Transaction;Ljava.lang.String;)Lweblogic.jdbc.wrapper.JTSConnection;(Driver.java:737)
    at weblogic.jdbc.jts.Driver.createLocalConnection(Lweblogic.transaction.Transaction;Ljava.lang.String;Ljava.util.Properties;)Lweblogic.jdbc.wrapper.JTSConnection;(Driver.java:197)
    at weblogic.jdbc.jts.Driver.connect(Ljava.lang.String;Ljava.util.Properties;)Ljava.sql.Connection;(Driver.java:155)
    at weblogic.jdbc.common.internal.RmiDataSource.getConnection()Ljava.sql.Connection;(RmiDataSource.java:305)
    at com.bea.wlw.runtime.core.control.DatabaseControlImpl.getConnection()Ljava.sql.Connection;(DatabaseControlImpl.jcs:1424)
    at com.bea.wlw.runtime.core.control.DatabaseControlImpl.context_onAcquire()V(DatabaseControlImpl.jcs:1316)
    at jrockit.reflect.NativeMethodInvoker.invoke0(Ljava.lang.Object;ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(DispMethod.java:367)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Ljava.lang.Object;Ljava.lang.String;Lcom.bea.wlw.runtime.core.dispatcher.DispMethod;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:423)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Lcom.bea.wlw.runtime.core.dispatcher.DispMethod;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:396)
    at com.bea.wlw.runtime.core.container.Invocable.fireEvent(Lcom.bea.wlw.runtime.core.context.WlwThreadContext;Ljava.lang.String;Ljava.lang.Object;Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:612)
    at com.bea.wlw.runtime.core.context.WlwThreadContext.sendEvent(Ljava.lang.reflect.Method;[Ljava.lang.Object;)Ljava.lang.Object;(WlwThreadContext.java:980)
    at com.bea.wlw.runtime.core.context.WlwThreadContext.raiseEvent()Ljava.lang.Object;(WlwThreadContext.java:910)
    at com.bea.wlw.runtime.core.container.Container.raiseContextEvent()Ljava.lang.Object;(Container.java:567)
    at com.bea.wlw.runtime.jcs.container.JcsContainer.onAcquire()V(JcsContainer.java:529)
    at jrockit.reflect.NativeMethodInvoker.invoke0(Ljava.lang.Object;ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
    at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
    at com.bea.wlw.runtime.core.dispatcher.DispMethod.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(DispMethod.java:367)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Ljava.lang.Object;Ljava.lang.String;Lcom.bea.wlw.runtime.core.dispatcher.DispMethod;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:423)
    at com.bea.wlw.runtime.core.container.Invocable.sendContextEvent(Ljava.lang.String;[Ljava.lang.Object;)Ljava.lang.Object;(Invocable.java:533)
    at com.bea.wlw.runtime.jcs.container.JcsContainer.sendContextEvent(Ljava.lang.String;[Ljava.lang.Object;)Ljava.lang.Object;(JcsContainer.java:480)
    at com.bea.wlw.runtime.jcx.container.JcxContainer.preInvoke(Lcom.bea.wlw.runtime.core.context.WlwThreadContext;Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.request.Request;(JcxContainer.java:110)
    at com.bea.wlw.runtime.core.container.Invocable.invoke(Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.dispatcher.InvokeResult;(Invocable.java:187)
    at com.bea.wlw.runtime.jcs.container.JcsContainer.invoke(Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.dispatcher.InvokeResult;(JcsContainer.java:84)
    at com.bea.wlw.runtime.core.bean.BaseContainerBean.invokeBase(Lcom.bea.wlw.runtime.core.request.Request;)Lcom.bea.wlw.runtime.core.dispatcher.InvokeResult;(BaseContainerBean.java:198)
    Message was edited by bbelchak at Aug 9, 2004 1:16 PM
    Message was edited by bbelchak at Aug 9, 2004 1:20 PM
    Message was edited by bbelchak at Aug 9, 2004 1:50 PM

  • WebLogic 7 Upgrade Problem -  TxDataSource / XA Drivers

    I am having major problems attempting to upgrade from WebLogic 6.1 to 7. After
    installing and configuring WebLogic 7, my application wouldn't load, telling me
    I needed to use TxDataSources instead of DataSources.
    So I switched to TxDataSources and after increasing the Max Capacity in the pools,
    I was able to get my application to load and run. However, whenever my application
    tries to access two different pools in the same transaction, I get this runtime
    error.
    java.sql.SQLException: Connection has already been created in this tx context
    fo
    r pool named commcp. Illegal attempt to create connection from another pool: adm
    cp
    java.sql.SQLException: Connection has already been created in this tx context
    fo
    r pool named commcp. Illegal attempt to create connection from another pool: adm
    cp
    at weblogic.jdbc.jts.Driver.getExistingConnection(Driver.java:339)
    at weblogic.jdbc.jts.Driver.connect(Driver.java:132)
    at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
    ce.java:265)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getConnection(RDBMSP
    ersistenceManager.java:698)
    at dtpitb.adm.eb.conclude.ConcludeBean_8ki0z9__WebLogic_CMP_RDBMS.ejbFin
    dByPrimaryKey(ConcludeBean_8ki0z9__WebLogic_CMP_RDBMS.java:968)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.findByPrimaryKey(RDB
    MSPersistenceManager.java:216)
    at weblogic.ejb20.manager.BaseEntityManager.findByPrimaryKey(BaseEntityM
    anager.java:755)
    at weblogic.ejb20.manager.BaseEntityManager.localFindByPrimaryKey(BaseEn
    tityManager.java:711)
    at weblogic.ejb20.internal.EntityEJBLocalHome.findByPrimaryKey(EntityEJB
    LocalHome.java:273)
    at dtpitb.adm.eb.conclude.ConcludeBean_8ki0z9_LocalHomeImpl.findByPrimar
    yKey(ConcludeBean_8ki0z9_LocalHomeImpl.java:109)
    at dtpitb.adm.sb.common.SessionBeanCommon.getConclusion(SessionBeanCommo
    n.java:237)
    at dtpitb.adm.sb.reports.ADMReportsBean_l3bmj9_EOImpl.getConclusion(ADMR
    eportsBean_l3bmj9_EOImpl.java:98)
    at dtpitb.adm.webapp.worker.SearchDecisionHistory.processWork(SearchDeci
    sionHistory.java:46)
    at gov.nih.nci.itb.webapp.controller.Controller.service(Controller.java:
    96)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
    (ServletStubImpl.java:1058)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:401)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:306)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
    n.run(WebAppServletContext.java:5445)
    at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
    eManager.java:780)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
    rvletContext.java:3105)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
    pl.java:2588)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    From what I understand, this meant that I needed to use an XA-supported Driver.
    So I installed the Oracle Thin/XA Driver (oracle.jdbc.xa.client.OracleXADataSource)
    instead of the regular Oracle Thin Driver I was using (oracle.jdbc.driver.OracleDriver).
    After trying that, my application will not load, throwing a bunch of XA Exceptions
    similar to the following:
    XA error: XAER_RMERR : A resource manager error has occured in the transaction
    b
    ranch start() failed on resource 'admcp': XAER_RMERR : A resource manager error
    has occured in the transaction branch
    oracle.jdbc.xa.OracleXAException
    at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:498)
    at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:19
    0)
    at weblogic.jdbc.jta.VendorXAResource.start(VendorXAResource.java:41)
    at weblogic.jdbc.jta.DataSource.start(DataSource.java:577)
    at weblogic.transaction.internal.ServerResourceInfo.start(ServerResource
    Info.java:1178)
    at weblogic.transaction.internal.ServerResourceInfo.xaStart(ServerResour
    ceInfo.java:1121)
    at weblogic.transaction.internal.ServerResourceInfo.enlist(ServerResourc
    eInfo.java:287)
    at weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
    rverTransactionImpl.java:407)
    at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1157)
    at weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
    109)
    at weblogic.jdbc.jta.Connection.getXAConn(Connection.java:147)
    at weblogic.jdbc.jta.Connection.prepareStatement(Connection.java:259)
    at weblogic.jdbc.rmi.internal.ConnectionImpl.prepareStatement(Connection
    Impl.java:139)
    at weblogic.jdbc.rmi.SerialConnection.prepareStatement(SerialConnection.
    java:92)
    at weblogic.ejb20.utils.TableVerifier.checkTableAndColumns(TableVerifier
    .java:133)
    at weblogic.ejb20.utils.TableVerifier.checkTableAndColumns(TableVerifier
    .java:79)
    at weblogic.ejb20.utils.TableVerifier.verifyTableAndColumnsExist(TableVe
    rifier.java:381)
    at weblogic.ejb20.utils.TableVerifier.verifyTableExistsAndCreateMaybe(Ta
    bleVerifier.java:432)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.verifyTablesExist(RD
    BMSPersistenceManager.java:1119)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.setup(RDBMSPersisten
    ceManager.java:150)
    at weblogic.ejb20.manager.BaseEntityManager.setupPM(BaseEntityManager.ja
    va:208)
    at weblogic.ejb20.manager.BaseEntityManager.setup(BaseEntityManager.java
    :178)
    at weblogic.ejb20.manager.DBManager.setup(DBManager.java:158)
    at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrive
    nBeanInfoImpl.java:944)
    at weblogic.ejb20.deployer.EJBDeployer.activate(EJBDeployer.java:1317)
    at weblogic.ejb20.deployer.EJBModule.activate(EJBModule.java:335)
    at weblogic.j2ee.J2EEApplicationContainer.activateModule(J2EEApplication
    Container.java:1662)
    at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContai
    ner.java:1087)
    at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContai
    ner.java:1074)
    at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(Sla
    veDeployer.java:1110)
    at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDep
    loyer.java:730)
    at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHan
    dler.java:24)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    I now have decided I need advice.
    Please advise.
    Thanks,
    Pete

    Thanks, Wayne. My organization is in the process of purchasing WebLogic, but we
    are still in the free trial period for another week or two.
    I am using:
    WebLogic 7.0 SP2
    Oracle 8.1.7
    (tried all 3 versions of classes12.zip)
    Driver Class Name in Conn Pools:
    Oracle Thin: "oracle.jdbc.driver.OracleDriver"
    Also Tried:
    Oracle Thin/XA: "oracle.jdbc.xa.client.OracleXADataSource"
    Thanks,
    Pete
    "Wayne W. Scott" <[email protected]> wrote:
    >
    Wow, this is heavy duty stuff to be getting free support for!
    Let's start with the basics to rule out known problems that have been
    fixed.
    Is this the base version or have you installed service packs?
    Also, this is not an installation problem; it is getting into EJB and
    TX. Other groups
    like: w.d.i.ejb20; w.d.i.workshop; w.d.i.jdbc -- might be better.
    You can also scan discussions in all groups via http://search.beasys.com/weblogic/gonews/
    Also try searching at AskBEA -- http://support.bea.com/index.jsp
    If these do not help, open a support case so that someone is assigned
    to this.
    Thank you,
    Wayne Scott
    Pete Hilfiker wrote:
    I am having major problems attempting to upgrade from WebLogic 6.1to 7. After
    installing and configuring WebLogic 7, my application wouldn't load,telling me
    I needed to use TxDataSources instead of DataSources.
    So I switched to TxDataSources and after increasing the Max Capacityin the pools,
    I was able to get my application to load and run. However, whenevermy application
    tries to access two different pools in the same transaction, I getthis runtime
    error.
    java.sql.SQLException: Connection has already been created in thistx context
    fo
    r pool named commcp. Illegal attempt to create connection from anotherpool: adm
    cp
    java.sql.SQLException: Connection has already been created in thistx context
    fo
    r pool named commcp. Illegal attempt to create connection from anotherpool: adm
    cp
    at weblogic.jdbc.jts.Driver.getExistingConnection(Driver.java:339)
    at weblogic.jdbc.jts.Driver.connect(Driver.java:132)
    at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSour
    ce.java:265)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.getConnection(RDBMSP
    ersistenceManager.java:698)
    at dtpitb.adm.eb.conclude.ConcludeBean_8ki0z9__WebLogic_CMP_RDBMS.ejbFin
    dByPrimaryKey(ConcludeBean_8ki0z9__WebLogic_CMP_RDBMS.java:968)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.findByPrimaryKey(RDB
    MSPersistenceManager.java:216)
    at weblogic.ejb20.manager.BaseEntityManager.findByPrimaryKey(BaseEntityM
    anager.java:755)
    at weblogic.ejb20.manager.BaseEntityManager.localFindByPrimaryKey(BaseEn
    tityManager.java:711)
    at weblogic.ejb20.internal.EntityEJBLocalHome.findByPrimaryKey(EntityEJB
    LocalHome.java:273)
    at dtpitb.adm.eb.conclude.ConcludeBean_8ki0z9_LocalHomeImpl.findByPrimar
    yKey(ConcludeBean_8ki0z9_LocalHomeImpl.java:109)
    at dtpitb.adm.sb.common.SessionBeanCommon.getConclusion(SessionBeanCommo
    n.java:237)
    at dtpitb.adm.sb.reports.ADMReportsBean_l3bmj9_EOImpl.getConclusion(ADMR
    eportsBean_l3bmj9_EOImpl.java:98)
    at dtpitb.adm.webapp.worker.SearchDecisionHistory.processWork(SearchDeci
    sionHistory.java:46)
    at gov.nih.nci.itb.webapp.controller.Controller.service(Controller.java:
    96)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run
    (ServletStubImpl.java:1058)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:401)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:306)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
    n.run(WebAppServletContext.java:5445)
    at weblogic.security.service.SecurityServiceManager.runAs(SecurityServic
    eManager.java:780)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
    rvletContext.java:3105)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
    pl.java:2588)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    From what I understand, this meant that I needed to use an XA-supportedDriver.
    So I installed the Oracle Thin/XA Driver (oracle.jdbc.xa.client.OracleXADataSource)
    instead of the regular Oracle Thin Driver I was using (oracle.jdbc.driver.OracleDriver).
    After trying that, my application will not load, throwing a bunch ofXA Exceptions
    similar to the following:
    XA error: XAER_RMERR : A resource manager error has occured in thetransaction
    b
    ranch start() failed on resource 'admcp': XAER_RMERR : A resource managererror
    has occured in the transaction branch
    oracle.jdbc.xa.OracleXAException
    at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:498)
    at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:19
    0)
    at weblogic.jdbc.jta.VendorXAResource.start(VendorXAResource.java:41)
    at weblogic.jdbc.jta.DataSource.start(DataSource.java:577)
    at weblogic.transaction.internal.ServerResourceInfo.start(ServerResource
    Info.java:1178)
    at weblogic.transaction.internal.ServerResourceInfo.xaStart(ServerResour
    ceInfo.java:1121)
    at weblogic.transaction.internal.ServerResourceInfo.enlist(ServerResourc
    eInfo.java:287)
    at weblogic.transaction.internal.ServerTransactionImpl.enlistResource(Se
    rverTransactionImpl.java:407)
    at weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1157)
    at weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1
    109)
    at weblogic.jdbc.jta.Connection.getXAConn(Connection.java:147)
    at weblogic.jdbc.jta.Connection.prepareStatement(Connection.java:259)
    at weblogic.jdbc.rmi.internal.ConnectionImpl.prepareStatement(Connection
    Impl.java:139)
    at weblogic.jdbc.rmi.SerialConnection.prepareStatement(SerialConnection.
    java:92)
    at weblogic.ejb20.utils.TableVerifier.checkTableAndColumns(TableVerifier
    .java:133)
    at weblogic.ejb20.utils.TableVerifier.checkTableAndColumns(TableVerifier
    .java:79)
    at weblogic.ejb20.utils.TableVerifier.verifyTableAndColumnsExist(TableVe
    rifier.java:381)
    at weblogic.ejb20.utils.TableVerifier.verifyTableExistsAndCreateMaybe(Ta
    bleVerifier.java:432)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.verifyTablesExist(RD
    BMSPersistenceManager.java:1119)
    at weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager.setup(RDBMSPersisten
    ceManager.java:150)
    at weblogic.ejb20.manager.BaseEntityManager.setupPM(BaseEntityManager.ja
    va:208)
    at weblogic.ejb20.manager.BaseEntityManager.setup(BaseEntityManager.java
    :178)
    at weblogic.ejb20.manager.DBManager.setup(DBManager.java:158)
    at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrive
    nBeanInfoImpl.java:944)
    at weblogic.ejb20.deployer.EJBDeployer.activate(EJBDeployer.java:1317)
    at weblogic.ejb20.deployer.EJBModule.activate(EJBModule.java:335)
    at weblogic.j2ee.J2EEApplicationContainer.activateModule(J2EEApplication
    Container.java:1662)
    at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContai
    ner.java:1087)
    at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContai
    ner.java:1074)
    at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(Sla
    veDeployer.java:1110)
    at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDep
    loyer.java:730)
    at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHan
    dler.java:24)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    I now have decided I need advice.
    Please advise.
    Thanks,
    Pete

  • Reg Weblogic Server Startup Problem

    Hi
    I have configured the weblogic Application Server using Oracle SOA11g
    When i started the weblogic server, i am getting below exception.
    Exception [TOPLINK-4002] (Oracle TopLink - 11g Release 1(11.1.1.5.0) (Build 110305)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
    Error Code: 942
    Call: SELECT DRIVER_NAME, MIME_TYPES, PROTOCOLS, CARRIERS, SENDER_ADDRESSES, COS
    T, DELIVERY_TYPES, SPEED, STATUS_TYPES, CHECKSUM, SUPPORTS_CANCEL, ENCODINGS, SU
    PPORTS_REPLACE, SUPPORTS_TRACKING, SUPPORTS_STATUS_POLLING, DEFAULT_SENDER, CAPA
    BILITY, LOCK_VERSION FROM DRIVER_INFO
    Query: ReadAllQuery(oracle.sdpinternal.messaging.config.DriverInfo)>
    Pls find below log from AdminServer.log and domain_name.log
    MDS-01370: MetadataStore configuration for metadata-store-usage "soa-infra-store" is invalid.  
    ORA-06550: line 1, column 12:
    PLS-00201: identifier 'MDS_INTERNAL_SHREDDED.GETREPOSITORYVERSION' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    I have tried several solutions for above problem:
    Sol1:
    I have checked my datasource.
    The database details and URL are correct and i am able to test the connection and the DB is up and running.
    Sol2:
    I dropped RCU and created again but it didnt resolve the issue.
    Sol3:
    I have renamed the folders tmp, cache and data folders to in the below location
    C:\Oracle\Middleware\user_projects\domains\SOA_domain\servers\AdminServer
    After starting the weblogic server,these folders are created again but problem is not solved.
    Sol4:
    Logged intoto Weblogic console->services->Data Source->Click on SOADataSource->Go to Transaction tab->verify 'XA Transaction Timeout:' is set to 0
    Sol5:
    The schemas details in RCU and during the SOA configuration, there is a screen called "Configure JDBC Component Schema".
    The schema details are same in both cases
    Sol6: Dropped Database, RCU and SOA and installed again.
    But the problem is not solved.
    Now i am getting below exception also:
    Caused by: javax.ejb.CreateException: SDP-25700: An unexpected exception was cau
    ght.
    Cause: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.Res
    ourceException: Could not create pool connection. The DBMS driver exception was:
    IO Error: The Network Adapter could not establish the connection
    Action: Check the stack trace for more details.
            at oracle.sdpinternal.messaging.storage.MessagingStoreBean.ejbCreate(Mes
    sagingStoreBean.java:174)
            at oracle.sdpinternal.messaging.storage.MessagingStore_urkbp2_Impl.ejbCr
    eate(Unknown Source)
            ... 56 more
    ; nested exception is: com.oracle.pitchfork.interfaces.LifecycleCallbackExceptio
    n: Failure to invoke public void oracle.sdpinternal.messaging.storage.MessagingS
    tore_urkbp2_Impl.ejbCreate() throws javax.ejb.CreateException,javax.ejb.EJBExcep
    tion on bean class class oracle.sdpinternal.messaging.storage.MessagingStore_urk
    bp2_Impl with args: []>
    I have tried deleting tmp folder and renaming tmp, data and cache folders in C:\Oracle\Middleware\user_projects\domains\BPM_Sample_domain\servers\AdminServer location.
    But the problem still perists.
    Please help me in resolving the issue.
    Regards
    Swathi

    Hi Swati,
    When you see this error
    Cause: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.Res
    ourceException: Could not create pool connection. The DBMS driver exception was:
    IO Error: The Network Adapter could not establish the connection
    Action: Check the stack trace for more details.
    That means Datasource Connection Pool is failing to create a pool either due to DB is down or no connection made by Pool resource.
    Try to tune the Datasource with following parameter will help you.
    1. Eanble Test connection on reseve
    2. Connection creation retry frequency second set as 10 these two parameter make reconnect back to you DB and Pool start executing correctly.
    After enable still have problem please provide complete stack.
    Regards,
    Kal

  • Oracle Rdb JDBC: Insufficient global memory

    Environment:
    IA64 OpenVMS 8.3
    Java RTE version 1.5
    Oracle RDB version 7.2-2
    SQL/services version 7.3
    JDBC server for RDB version 7.3
    JDBC-Thin driver version 7.3
    The problem:
    we have a JDBC dispatcher with 20 executor processes.
    We have a client application that performs connect/disconnect to the database before/after each sql select statement.
    Sometimes the query doesn't terminate successfully and we get the following error in
    the JDBC log file:
    RDB$CLIENT_ID_0000038D C00000000*T 201010-21 12:19:13.409 : [email protected] msg : INIT_V713 send>>>>>>>>>>>>> System Error : Insufficient global memory
    any help?

    I would start with RDB administration/configuration documents. It's a DBMS server issue,
    not JDBC. Though it may or may not help, in principal, if yo can keep and re-use connections
    instead of repeatedly opening and closing, it is usually faster and less burdensome on the DBMS...

  • WebLogic Server - JDBC - Oracle

    Hi,
    I'm a JDBC beginner and I got an ORA-24327 error when accessing Oracle database with IBM WebLogic Server and JDBC OCI 1.2 on a Sun Solaris 2.6 host whith Sun JDK 1.2.2.
    Who can help me ?
    PASCAL

    I am having the same problem and have not had any luck. Did you figure it out?
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Pascal LAMBERT ([email protected]):
    Hi,
    I'm a JDBC beginner and I got an ORA-24327 error when accessing Oracle database with IBM WebLogic Server and JDBC OCI 1.2 on a Sun Solaris 2.6 host whith Sun JDK 1.2.2.
    Who can help me ?
    PASCAL<HR></BLOCKQUOTE>
    null

  • Distributed transactions/jdbc problem WL60

    Hi
              Our company has aworking application running on WLS5.1sp9.
              Im in the process of migrating it to WL6.0sp2.
              Our domain has 2 clusters each running 2 servers:
              1) servlet engines (handling http requests from clients, running servlets
              and jsp's)
              2) ejb containers (runnigour entities and session beans, working with Oracle
              8i database using connection pool and TxDataSource)
              The scenario:
              - a client request invokes a servlet on one of the servlet engines.
              - the servlet opens a jndi context to one of the ejb containers
              - the servlet open a transaction on a UserTransaction stub on that ejb.
              - then the servlet calls an entity bean using a home interface looked up
              using the same context.
              - the entity bean uses DataSource lookup in its own servers jndi to rerieve
              a connection.
              and then i get the following exception:
              java.sql.SQLException: No default driver for database type:
              jdbc:weblogic:jts
              at
              weblogic.jdbcbase.t3.Driver.seeIfWeNeedToInferDriverNameAndUrlFrom(Driver.ja
              va:456)
              at weblogic.jdbcbase.t3.Driver.getAllPropsFrom(Driver.java:255)
              at weblogic.jdbcbase.t3.Driver.connect(Driver.java:75)
              at weblogic.jdbcbase.jts.Driver.createRemoteConnection(Driver.java:199)
              at weblogic.jdbcbase.jts.Driver.connect(Driver.java:134)
              at
              weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java
              :44)
              at com.unisfair.util.DBHelper.getConnection(DBHelper.java:43)
              the transaction toString() gives:
              transaction=(IdHash=7541556,Name = [EJB
              UserBeanImpl.generateSessionSuffix()],Xid=2:b53da78d3c1badbb,Status=Active,n
              umRepliesOwedMe=0,numRepliesOwedOthers=1,seconds since begin=0,seconds
              left=30,activeThread=Thread[ExecuteThread: '8' for queue: 'default',5,Thread
              Group for Queue:
              'default'],ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=new,assig
              ned=none),SCInfo[ejb2]=(state=active),SCInfo[servlet2]=(state=active),SCInfo
              [ejb1]=(state=active),properties=({weblogic.transaction.name=[EJB
              UserBeanImpl.generateSessionSuffix()], weblogic.jdbc=t3://10.0.0.31:7007}))
              However the error happens on the other ejb server 10.0.0.33:7007
              It seems that the jts driver tries to get a remote connection on the server
              that coordinates the transaction but uses the deprecated t3 driver.
              I hope someone can help us since this problem is a good enough reason for us
              not moving on to WL6.0 we also looked at WL6.1 Beta and theres nothing new
              about it either.
              thanks
              Dror Last
              Senior Software Engineer
              Unisfair Inc.
              12 Yad Haruzim St. Tel Aviv 67778 Israel
              Tel: +972-3-5373738 Ext. 243
              Fax: +972-3-5373731
              GSM: +972-55-723710
              mailto:[email protected]
              http://www.unisfair.com/
              

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by JDBC_TX ():
    In the readme file of Oracle JDBC drivers 8.1.6.0.1 (http://technet.oracle.com/software/tech/java/sqlj_jdbc/files/Readme_01.txt)
    it mentioned that it supports "distributed transactions".
    As I understand, JDBC transaction is connection based and uses Oracle internal transaction manager. In order to do "distributed transactions", I must have at least two connections open at the same time each to its own database instance. How does the two connections coordinate the transactions? I thought in order to support "distributed transactions", one has to build a higher layer to encapsulate the two connections and therefore coordinate the distributed transactions. Any examples will be welcome.<HR></BLOCKQUOTE>
    The two branches of the transaction are coordinated using 2-phase commit.
    For samples look under
    $ORACLE_HOME/jdbc/demo/samples/oci8/jdbc20-samples/
    null

  • JDBC Problem with Netscape Enterprise Server 3.61

    I have created a servlet->JDBC(Thin driver for Oracle 7.3) model to communicate the ORacle Database on an UNIX box by using Netscape Enterprise Server 3.61. I got the following problems and if anyone could help me. Many many thanks.
    java.lang.IllegalAccessError: JdbcDriver at
    WhitePageSearch.doGet(WhitePageSearch.java:75) * at
    javax.servlet.http.HttpServlet.service(HttpServlet.java:252) at
    javax.servlet.http.HttpServlet.service(HttpServlet.java:330) at
    sun.servlet.netscape.NSRunner.run(NSRunner.java:144) at
    netscape.server.applet.ServerApplet.handleRequest(ServerApplet.java:69)
    at netscape.server.applet.HttpApplet.handleRequest(HttpApplet.java:680)
    By the way. This model works fine on the servletrunner on my NT machine and I guess there are some problem on the Nescape Server setting.

    You need to install the Netscape Proxy plug-in.
    You can find the plug-in at the BEA download site along with the instructions.
    Once downloaded it took about 5 minutes to update a config file and have everything running.
    Good Luck...
    Daniel Astillero <[email protected]> wrote:
    How can I configure Netscape Enterprise Server 3.5.1 to use WebLogic 5.1?

  • Informix JDBC Problem

    Hi!
    We're using Informix 7 + WL6sp1 + Informix JDBC Driver v2.2. We have a connection
    pool and connect to the pool using:
    Driver myDriver = (Driver) Class.forName("weblogic.jdbc.pool.Driver").newInstance();
    con = DriverManager.getConnection("jdbc:weblogic:pool:poolname");
    The problem is as follows:
    Every time we modify a stored procedure (DROP ... CREATE ...) our app fails when
    trying to use that stored procedure. We have to shut down the server and restart
    it in order to keep going.
    The stack trace:
    java.sql.SQLException: SPL routine(disponibilidad_hot) is no longer valid.
    at com.informix.jdbc.IfxSqli.addException(IfxSqli.java, Compiled Code)
    at com.informix.jdbc.IfxSqli.receiveError(IfxSqli.java, Compiled Code)
    at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java, Compiled Code)
    at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java, Compiled Code)
    at com.informix.jdbc.IfxSqli.sendStatementQuery(IfxSqli.java, Compiled
    Code)
    at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java, Compiled
    Code)
    at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java, Compiled
    Code)
    at com.informix.jdbc.IfxResultSet.executeQuery(IfxResultSet.java, Compiled
    Code)
    at com.informix.jdbc.IfxStatement.executeQueryImpl(IfxStatement.java,
    Compiled Code)
    at com.informix.jdbc.IfxPreparedStatement.executeQuery(IfxPreparedStatement.java,
    Compiled Code)
    at weblogic.jdbc.pool.PreparedStatement.executeQuery(PreparedStatement.java,
    Compiled Code)
    at es.gesfor.bd.ObtenerDatos.ejecutar(ObtenerDatos.java, Compiled Code)
    at es.gesfor.servlets.FiltrosServlet.obtenerHoteles(FiltrosServlet.java,
    Compiled Code)
    at es.gesfor.servlets.FiltrosServlet.doPost(FiltrosServlet.java, Compiled
    Code)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java, Compiled Code)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java, Compiled Code)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java,
    Compiled Code)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java,
    Compiled Code)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java,
    Compiled Code)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java, Compiled
    Code)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled Code)

    Hi Federico,
    It happens because weblogic caches prepred statements.
    Though the name of the stored procedure remains the same,
    it's a different object from the database point of view, which is
    why a mismatch between cache and database occurs.
    You may consider setting size of the prepared statement
    cache to zero. That should solve the problem. Later, when
    the SP code is stabilized, you will be able to turn in on back.
    Regards,
    Slava Imeshev
    "Federico Dios" <[email protected]> wrote in message
    news:[email protected]...
    >
    Hi!
    We're using Informix 7 + WL6sp1 + Informix JDBC Driver v2.2. We have aconnection
    pool and connect to the pool using:
    Driver myDriver = (Driver)Class.forName("weblogic.jdbc.pool.Driver").newInstance();
    con = DriverManager.getConnection("jdbc:weblogic:pool:poolname");
    The problem is as follows:
    Every time we modify a stored procedure (DROP ... CREATE ...) our appfails when
    trying to use that stored procedure. We have to shut down the server andrestart
    it in order to keep going.
    The stack trace:
    java.sql.SQLException: SPL routine(disponibilidad_hot) is no longer valid.
    at com.informix.jdbc.IfxSqli.addException(IfxSqli.java, CompiledCode)
    at com.informix.jdbc.IfxSqli.receiveError(IfxSqli.java, CompiledCode)
    at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java, CompiledCode)
    at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java, CompiledCode)
    at com.informix.jdbc.IfxSqli.sendStatementQuery(IfxSqli.java,Compiled
    Code)
    at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java,Compiled
    Code)
    at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java,Compiled
    Code)
    at com.informix.jdbc.IfxResultSet.executeQuery(IfxResultSet.java,Compiled
    Code)
    atcom.informix.jdbc.IfxStatement.executeQueryImpl(IfxStatement.java,
    Compiled Code)
    atcom.informix.jdbc.IfxPreparedStatement.executeQuery(IfxPreparedStatement.jav
    a,
    Compiled Code)
    atweblogic.jdbc.pool.PreparedStatement.executeQuery(PreparedStatement.java,
    Compiled Code)
    at es.gesfor.bd.ObtenerDatos.ejecutar(ObtenerDatos.java, CompiledCode)
    ates.gesfor.servlets.FiltrosServlet.obtenerHoteles(FiltrosServlet.java,
    Compiled Code)
    at es.gesfor.servlets.FiltrosServlet.doPost(FiltrosServlet.java,Compiled
    Code)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java,Compiled Code)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java,Compiled Code)
    atweblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    Compiled Code)
    atweblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
    ntext.java,
    Compiled Code)
    atweblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
    Compiled Code)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java,Compiled
    Code)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, CompiledCode)

Maybe you are looking for