JDBC-OCI (8.1.6) - Weblogic

Hi,
I am trying to get weblogic 4.5 to connect to an Oracle 8i database.
The database and listener are operating fine, but so far I cannot connect from weblogic.
1) What type is the JDBC-OCI driver for 8.1.6 (supporting JDK 1.2)?
2) Do I need to install the OCI driver as well as the JDBC driver on the weblogic server? If so, where do I get the OCI driver?
Regards,
Ultan
[email protected]

Your questions are confusing. You seem to consider OCI Driver and JDBC Driver as 2 versions of drivers, but in reality the former is a type of the latter.
Oracle supplies 2 types of JDBC drivers, i.e., Type II, or the OCI driver, and Type IV, the Thin driver. They are both contained in the classes111 or classes12.zip file. To use the OCI driver, you need to install the Oracle Client Library (OCI library).
To use these drivers with WebLogic, you need to include the path to the classes111.zip file in your weblogic.class.path variable in the startWebLogic.bat or .sh script file, or set it in the Windows Registry.
Eric Ma

Similar Messages

  • XA transaction using weblogic.jdbc.oci.xa.XADataSource

    Hi everyone, I am trying to execute XA transaction using the driver XA compatible
    driver
    weblogic.jdbc.oci.xa.XADataSource. I have added c:\bea7.0SP4
    \weblogic700\server\bin\ntvinv\oci817_8\weblogicoci38.dll in the PATH in my
    weblogic managed server startup script.
    When I start managed server, I get the error saying that weblogicoci38.dll
    is not in java.library.path. I checked the server log file and in that
    it clearly shows that java.library.path contains this file. Please suggest
    me what to do.
    I have weblogic 7.0 with SP4 and databse is oracle 8i.
    thanks,
    jyothi
    ####<Mar 1, 2004 9:52:36 AM EST> <Error> <JDBC> <temp1> <server1> <main> <kernel
    identity> <> <001060> <Cannot startup connection pool "ConnPool1" java.sql.SQLException:
    System.loadLibrary(weblogicoci38) threw java.lang.UnsatisfiedLinkError: no weblogicoci38
    in java.library.path>
    ####<Mar 1, 2004 9:52:49 AM EST> <Info> <Management> <temp1> <server1> <main>
    <kernel identity> <> <141187> <Java system properties are defined as follows:
    awt.toolkit = sun.awt.windows.WToolkit
    bea.home = c:\bea7.0SP4
    file.encoding = Cp1252
    file.encoding.pkg = sun.io
    file.separator = \
    java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
    java.awt.printerjob = sun.awt.windows.WPrinterJob
    java.class.path = c:\bea7.0SP4\jdk131_08\lib\tools.jar;c:\bea7.0SP4\weblogic700\server\lib\weblogic_sp.jar;c:\bea7.0SP4\weblogic700\server\lib\weblogic.jar;c:\bea7.0SP4\weblogic700\server\bin\ntvinv\oci817_8\weblogicoci38.dll;C:\bea7.0SP4\user_projects\jytDmnCluster\lib\parser.jar.jar;C:\bea7.0SP4\user_projects\jytDmnCluster\lib\xml4j_1_1_16.jar;C:\bea7.0SP4\user_projects\jytDmnCluster\p6spy.jar
    java.class.version = 47.0
    java.ext.dirs = c:\bea7.0SP4\jdk131_08\jre\lib\ext
    java.home = c:\bea7.0SP4\jdk131_08\jre
    java.io.tmpdir = C:\DOCUME~1\jshanbag\LOCALS~1\Temp\
    java.library.path = c:\bea7.0SP4\jdk131_08\bin;.;C:\WINNT\System32;C:\WINNT;.;c:\bea7.0SP4\weblogic700\server\bin;c:\bea7.0SP4\jdk131_08\bin;c:\bea7.0SP4\weblogic700\server\bin\ntvinv\oci817_8\weblogicoci38.dll;\jpda\bin;C:\Oracle\Ora81\bin;C:\Program
    Files\Oracle\jre\1.1.7\bin;C:\PROGRA~1\PVCS\VM\win32\bin;C:\WINNT\system32;C:\WINNT;C:\WINNT\system32\WBEM;c:\;c:\vslick\win

    jyothip wrote:
    Hi everyone, I am trying to execute XA transaction using the driver XA compatible
    driver
    weblogic.jdbc.oci.xa.XADataSource. I have added c:\bea7.0SP4
    \weblogic700\server\bin\ntvinv\oci817_8\weblogicoci38.dll in the PATH in my
    weblogic managed server startup script.
    When I start managed server, I get the error saying that weblogicoci38.dll
    is not in java.library.path. I checked the server log file and in that
    it clearly shows that java.library.path contains this file. Please suggest
    me what to do.Hi. This error message can be confusing for some OSes. If the process tries to
    load a method from XYZ.DLL, and finds the DLL, but in order to load that method,
    it finds it needs to also load ABC.DLL (such as the Oracle OCI DLL or the OS C libraries)
    and doesn't find that lower-level DLL, the user can get a message mentioning only the
    first (present) DLL. Please print out your full java.library.path. Does it correctly
    list all the basing OS C libraries, and the Oracle Clint library path?
    thanks,
    Joe
    >
    I have weblogic 7.0 with SP4 and databse is oracle 8i.
    thanks,
    jyothi
    ####<Mar 1, 2004 9:52:36 AM EST> <Error> <JDBC> <temp1> <server1> <main> <kernel
    identity> <> <001060> <Cannot startup connection pool "ConnPool1" java.sql.SQLException:
    System.loadLibrary(weblogicoci38) threw java.lang.UnsatisfiedLinkError: no weblogicoci38
    in java.library.path>
    ####<Mar 1, 2004 9:52:49 AM EST> <Info> <Management> <temp1> <server1> <main>
    <kernel identity> <> <141187> <Java system properties are defined as follows:
    awt.toolkit = sun.awt.windows.WToolkit
    bea.home = c:\bea7.0SP4
    file.encoding = Cp1252
    file.encoding.pkg = sun.io
    file.separator = \
    java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
    java.awt.printerjob = sun.awt.windows.WPrinterJob
    java.class.path = c:\bea7.0SP4\jdk131_08\lib\tools.jar;c:\bea7.0SP4\weblogic700\server\lib\weblogic_sp.jar;c:\bea7.0SP4\weblogic700\server\lib\weblogic.jar;c:\bea7.0SP4\weblogic700\server\bin\ntvinv\oci817_8\weblogicoci38.dll;C:\bea7.0SP4\user_projects\jytDmnCluster\lib\parser.jar.jar;C:\bea7.0SP4\user_projects\jytDmnCluster\lib\xml4j_1_1_16.jar;C:\bea7.0SP4\user_projects\jytDmnCluster\p6spy.jar
    java.class.version = 47.0
    java.ext.dirs = c:\bea7.0SP4\jdk131_08\jre\lib\ext
    java.home = c:\bea7.0SP4\jdk131_08\jre
    java.io.tmpdir = C:\DOCUME~1\jshanbag\LOCALS~1\Temp\
    java.library.path = c:\bea7.0SP4\jdk131_08\bin;.;C:\WINNT\System32;C:\WINNT;.;c:\bea7.0SP4\weblogic700\server\bin;c:\bea7.0SP4\jdk131_08\bin;c:\bea7.0SP4\weblogic700\server\bin\ntvinv\oci817_8\weblogicoci38.dll;\jpda\bin;C:\Oracle\Ora81\bin;C:\Program
    Files\Oracle\jre\1.1.7\bin;C:\PROGRA~1\PVCS\VM\win32\bin;C:\WINNT\system32;C:\WINNT;C:\WINNT\system32\WBEM;c:\;c:\vslick\win

  • JDBC OCI和JDBC Thin有什么区别?

    JDBC OCI和JDBC Thin有什么区别?
    效果有什么区别?(都是通过weblogic连db的)

    一般来说
    OCI效率应该高一些
    不过使用的时候一般使用jdbc直接连接
    因为OCI不是纯java实现

  • JDBC/OCI driver for JDK1.2

    Hi,
    I have an evaluation copy of Oracle8 version 8.0.3.0 and
    downloaded the JDBC/OCI driver for JDK1.1 (classe111.zip). The
    example I used was also taken from this site, which connects to
    the database and lists ename from emp, using scott/tiger.
    Everything worked fine under JDK1.1 but I can't get the code to
    work with JDK 1.2
    Does Oracle provide a JDBC/OCI driver that will work with JAVA
    1.2 or am I missing something. Please note that I am not using
    Oracle8i.
    Any assistance would be greatly appreciated.
    Karim
    null

    Karim,
    Openlink Software (http://www.openlinksw.com) provides JDBC 2.0
    drivers in version 3.2. This version will be hitting our public
    web site next week, but you can get pre-release components from
    ftp://ftp.openlinksw.com/pre-3.2/index.html
    The JDK 1.2 drivers are all the way at the bottom under the
    Windows section.
    HTH,
    Stephen
    Karim (guest) wrote:
    : Hi,
    : I have an evaluation copy of Oracle8 version 8.0.3.0 and
    : downloaded the JDBC/OCI driver for JDK1.1 (classe111.zip). The
    : example I used was also taken from this site, which connects
    to
    : the database and lists ename from emp, using scott/tiger.
    : Everything worked fine under JDK1.1 but I can't get the code
    to
    : work with JDK 1.2
    : Does Oracle provide a JDBC/OCI driver that will work with JAVA
    : 1.2 or am I missing something. Please note that I am not using
    : Oracle8i.
    : Any assistance would be greatly appreciated.
    : Karim
    null

  • AIX JDBC OCI Driver

    I'm using IBM's WebSphere JDBC connection pool to manage oracle
    connections. While the code worked normally on Sun Solaris, I
    get ORA-03123, ORA-03127 etc errors on AIX. I'm closing the
    resultsets, the statement handles and releasing the connection
    after each SQL execution. Is this an AIX JDBC OCI driver problem
    or am I missing something.
    Thanks,
    Ravi
    null

    I found problem like you but on DIGITAL UNIX 4.0D It's an
    AIO Consistency Error.. did you know some thing about this??
    and For your question OCI7 driver to connect to ORACLE7.3.4 are
    in liboci73.so or another extension depend on your OS (I don't
    know what's one on AIX) but it must come with Oracle
    Installation Package you can install on AIX :>
    Prashant (guest) wrote:
    : Hi:
    : Does any one know where I could find JDBC/OCI level 2 driver
    : for AIX (4.2) running Oracle (7.3.4). All I have been able to
    : locate is the NT and Solaris. Both contains classes and shared
    : libraries for that machine. I saw someone posted this question
    : before, however, suggestions was to use dynamic library
    generated
    : for Solaris, this will not work. Does anyone have other
    : suggestions.
    : Any and all help is appreciated.
    : Many Thanks
    : Prashant.
    null

  • Jdbc oci interface and xdb API for oracle 9.2.0.7

    I have a Java application that uses the jdbc oci interface to connect to an Oracle database and insert some XML into an XMLType column using the XDB APIs provided in xdb.jar.
    OS : IBM AIX version 5.1
    JVM : IBM 32-bit SDK pour AIX, Java 2 Technology Edition, version 1.4.2
    libraries used :
    ojdbc14.jar
    nls_charset12.jar
    xdb.jar
    xmlparserv2.jar
    libocijdbc9.so
    with Oracle 9.2.0.1 the application worked correctly. However we have just upgraded from Oracle 9.2.0.1 to Oracle 9.2.0.7 and now the JVM crashes when the XMLType.createXML(java.sql.Connection, java.lang.String) API is called. The error message is :
    JVMDG217: Dump Handler is Processing Signal 11 - Please Wait.
    JVMDG303: JVM Requesting Java core file
    JVMDG304: Java core file written to /<snip>/javacore2375690.1152115549.txt
    JVMDG215: Dump Handler has Processed Exception Signal 11.
    start.shl: 2375690 Segmentation fault(coredump)
    In the javacore file we find the lines :
    1XHSIGRECV SIGSEGV received at 0xdd7b7d6c in /<snip>/libocijdbc9.so. Processing terminated.
    ... <snip> ...
    "Thread-2" (TID:0x3030B4D8, sys_thread_t:0x75A8B128, state:R, native ID:0xA0C) prio=5
    4XESTACKTRACE at oracle.xdb.XMLType.createXMLTypeFromStringNative(Native Method)
    4XESTACKTRACE at oracle.xdb.XMLType.<init>(XMLType.java:518)
    4XESTACKTRACE at oracle.xdb.XMLType.createXML(XMLType.java:593)
    Does anyone have any ideas? Changing the version from 9.2.0.7 is not an option.
    Thanks,
    Dave Gosling.

    The 9.2.0.5 patchset, and all patchsets, are available for download from Metalink.
    There should be a rather large variety of JDBC drivers that will connect to an 9.2.0.5 database if that's what you're asking about.
    Justin
    Distributed Database Consulting, Inc.
    http://www.ddbcinc.com/askDDBC

  • Oracle 8.1.5 and JDBC OCI connection problem

    We are running Oracle 8.1.5 on Solaris 7 machine, and our java application running on JDK 1.2 connects to Oracle via JDBC thin driver because we couldn't make jdbc oci driver work.
    When we try to connect via oci with the driver originally shipped with 8.1.5, we get:
    Exception in thread "main" java.lang.UnsatisfiedLinkError: make_c_state
    at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:213)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:198)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:251)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:224)
    at java.sql.DriverManager.getConnection(Compiled Code)
    at java.sql.DriverManager.getConnection(DriverManager.java:137)
    at JDBCTest.main(Compiled Code)
    After we downloaded 8.1.6sdk driver from technet and install it, we get:
    Exception in thread "main" java.lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path
    at java.lang.Throwable.fillInStackTrace(Native Method)
    at java.lang.Throwable.fillInStackTrace(Compiled Code)
    at java.lang.Throwable.<init>(Compiled Code)
    at java.lang.Error.<init>(Error.java:50)
    at java.lang.LinkageError.<init>(LinkageError.java:43)
    at java.lang.UnsatisfiedLinkError.<init>(UnsatisfiedLinkError.java:42)
    at java.lang.ClassLoader.loadLibrary(Compiled Code)
    at java.lang.Runtime.loadLibrary0(Runtime.java:471)
    at java.lang.System.loadLibrary(System.java:745)
    at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:209)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:198)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:251)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:224)
    at java.sql.DriverManager.getConnection(Compiled Code)
    at java.sql.DriverManager.getConnection(DriverManager.java:137)
    at JDBCTest.main(Compiled Code)
    I searched this forum for answer and only relevent answer from oracle was: consult README file! Readme file mentions that lobocijdbc.so file is shared library file for oci connection. That't all. So what?
    I added the directory where libocijdbc8.so resides to LD_LIBRARY_PATH, and System.getProperty("java.library.path") shows content of LD_LIBRARY_PATH correctly.
    null

    Please this is not simple as simple as checking the classpath and LD_LIBRARY_PATH.
    I tried the sample program and the result is the same. As pointed out first by Won, putting the libocijdbc8.so from SDK8.1.6 in the LD_LIBRARY_PATH has no effect at all. It gives the unsatisfied linker error. The sample program fails. However the sample program works fine with the libocijdbc8.so from sdk8.1.5. The library gets loaded. But at the time of creating the connection it gives make_c_state error.
    Here is my CLASSPATH, PATH and LD_LIBARY_PATH variables
    ORACLE_HOME=/opt/oracle/product/8.1.5
    LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/opt/oracle/product/8.1.5/lib
    PATH=/usr/openwin/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin:/usr/ucb:/opt/oracle/product/8.1.5/lib
    Hope you are able to provide better answer then check your environment variables.
    THE libocijdbc8.so FROM SDK8.1.6 DOES NOT GET LOADED AT ALL.
    Waiting for the reply.
    Please Help.
    Regards,
    Vipul Modi.
    Novell Inc.
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Won, Taewoong([email protected]):
    We are running Oracle 8.1.5 on Solaris 7 machine, and our java application running on JDK 1.2 connects to Oracle via JDBC thin driver because we couldn't make jdbc oci driver work.
    When we try to connect via oci with the driver originally shipped with 8.1.5, we get:
    Exception in thread "main" java.lang.UnsatisfiedLinkError: make_c_state
    at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:213)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:198)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:251)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:224)
    at java.sql.DriverManager.getConnection(Compiled Code)
    at java.sql.DriverManager.getConnection(DriverManager.java:137)
    at JDBCTest.main(Compiled Code)
    After we downloaded 8.1.6sdk driver from technet and install it, we get:
    Exception in thread "main" java.lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path
    at java.lang.Throwable.fillInStackTrace(Native Method)
    at java.lang.Throwable.fillInStackTrace(Compiled Code)
    at java.lang.Throwable.<init>(Compiled Code)
    at java.lang.Error.<init>(Error.java:50)
    at java.lang.LinkageError.<init>(LinkageError.java:43)
    at java.lang.UnsatisfiedLinkError.<init>(UnsatisfiedLinkError.java:42)
    at java.lang.ClassLoader.loadLibrary(Compiled Code)
    at java.lang.Runtime.loadLibrary0(Runtime.java:471)
    at java.lang.System.loadLibrary(System.java:745)
    at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:209)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:198)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:251)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:224)
    at java.sql.DriverManager.getConnection(Compiled Code)
    at java.sql.DriverManager.getConnection(DriverManager.java:137)
    at JDBCTest.main(Compiled Code)
    I searched this forum for answer and only relevent answer from oracle was: consult README file! Readme file mentions that lobocijdbc.so file is shared library file for oci connection. That't all. So what?
    I added the directory where libocijdbc8.so resides to LD_LIBRARY_PATH, and System.getProperty("java.library.path") shows content of LD_LIBRARY_PATH correctly.
    <HR></BLOCKQUOTE>
    null

  • Memory Leak in 8.1.6.0.1 JDBC/OCI for Solaris

    Hello,
    there is a memory leak in the 8.1.6.0.1 JDBC-OCI driver for solaris.
    The leak causes your jvm to eat up all memory
    if you reuse callable statements
    (calling one statement multiple times with
    different values).
    The thin driver has no such problem. Is
    there any fix available ?

    Ok. The code spans multiple classes and
    most of it comes from a customized version
    of the Enhydra Java Application server.
    I have a class called "StandardDBConnection"
    which caches CallableStatements and is a
    wrapperclass for java.sql.DBConnection. The
    interesting method here is "prepareCall":
    * Get a callable statement given an SQL string. If the statement is
    * cached, return that statement, otherwise prepare and save in the
    * cache.
    * @param sql The SQL statement to be called.
    * @return a new CallableStatement object containing the
    * pre-compiled SQL statement.
    * @exception java.sql.SQLException If a database access error occurs
    * statement.
    public synchronized CallableStatement prepareCall(String sql)
    throws SQLException {
    PreparedStatement preparedStmt;
    logDebug ("Prepare call: " + sql);
    validate();
    preparedStmt = (PreparedStatement)preparedStmtCache.get(sql);
    // Check if the object returned by the cache really is a
    // callable statement. if it is not, someone did call first
    // prepareStatement() and now prepareCall() with the same
    // sql. Silently replace the existing cache entry by a
    // callable statement in this case.
    if (preparedStmt instanceof CallableStatement) {
    preparedStmt.clearParameters();
    else {
    // Need to close the old PreparedStatement in case we have to
    // replace it with a CallableStatement
    if (preparedStmt != null) {
    preparedStmt.close();
    else if (preparedStmtCache.size() >= maxPreparedStmts) {
    String key = (String)preparedStmtCache.keys().nextElement();
    ((PreparedStatement) preparedStmtCache.remove(key)).close();
    preparedStmt = connection.prepareCall(sql);
    preparedStmtCache.put(sql, preparedStmt);
    return (CallableStatement)preparedStmt;
    The statements get closed when I close the
    connection:
    boolean closeStmts = true;
    // Close the prepared statements.
    Enumeration e = preparedStmtCache.keys();
    while (e.hasMoreElements() && closeStmts) {
    String key = (String)e.nextElement();
    try {
    ((PreparedStatement)
    preparedStmtCache.remove(key)).close();
    } catch (SQLException except) {
    // Ignore errors, we maybe handling one.
    closeStmts = false;
    log.write(Logger.NOTICE,
    "DBConnection[" + id + "]: " + url +
    "\nUnable to close statements. Continuing....\n");
    In my classes using database queries I just
    use the prepareCall method of DBConnection
    and do not have to care about anything.
    Works perfectly with the thin driver, but
    as soon as I switch to oci... :-|
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by JDBC Dev Team:
    Soda, Rupper,
    Do you mind posting some code that shows us what your code was doing when you notice this leak?
    Thanks.<HR></BLOCKQUOTE>
    null

  • How do you install the JDBC-OCI patch for a Windows NT4 IFS Installation?

    I am about to install IFS on a Windows NT4 Server. I dont understand the instructions for installing the JDBC-OCI patch.
    How do you install the JDBC-OCI drivers?
    Do I install them after installing Oracle 8.1.6? and before installing IFS?
    Is it necessary to install them?
    I would be grateful for as much help as possible, I have never done anything like this before.
    [email protected]

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Jaikishan Tada, Oracle Support:
    Before installing iFS, you need to install
    Oracle8i Client (with Administrator option).
    This installs JDBC-OCI driver and other
    common Oracle components such as Net8,
    OEM ....
    The JDBC-OCI driver patch is available from
    technet to download. Go to the url - http://technet.oracle.com/software/tech/java/sqlj_jdbc/software_index.htm
    and download Oracle8i 8.1.6.0.1 JDBC Drivers for use with JDK 1.1.x.
    Apply the patch and carry out iFS installation/configuration.
    Go through the iFS installation guide.
    Good Luck,<HR></BLOCKQUOTE>
    null

  • How to involve time in a date column in JDBC OCI 8.0.5.2.

    Hi,
    I need to involve time in a date column in JDBC OCI 8.0.5.2.
    The default date format is like "09-Sep-1999". I could use it
    but just need time involved too, like "09-Sep-1999 10:11:12".
    I tried to use JDBC's Timestamp whose format is like
    1999-9-9 12:00:00.000, just same as the dates selected from my
    table,
    but got an error message "literal doesn't match format string".
    The JDBC document said Oracle's date could be JDBC date,
    timestamp and char.
    Thanks a lot!
    -Ninon
    null

    : The only oracle driver that vcan run with JDK 1.2.x is in the
    OTN
    : download area and is named "816SDK for JDK 1.2"
    : it will work with the JDK 1.2.X using the JDBC 1.22 spec from
    JDK
    : 1.1.X.
    : IT DOES NOT PROVIDE THE FULL JDBC 2.0 FEATURES/ FUNCTIONALITY
    : THAT ARE INCLUDED IN THE JDK 1.2.X CLASSES.
    Does anyone know which versions of Oracle this driver will work
    with? I'm trying to use JDK 1.2 and Oracle 8.04 with the above
    mentioned driver, but it's misbehaving on prepared statements:
    I'm getting a 'ORA-8001 not all variables bound' error even
    though I'm correctly specifying binary data (using
    PreparedStatement.setBytes(..)) for a LONG RAW column...
    Please don't tell me I have to upgrade my Oracle installation in
    order to use JDBC with JDK 1.2.x
    Feedback is greatly appreciated!
    thanks!
    // Tor Kleiberg
    null

  • Calling a procedure using JDBC-OCI

    When I use setPlsqlIndexTable for calling a procedure using JDBC-OCI
    ps.setPlsqlIndexTable(1,str,10,str.length,OracleTypes.VARCHAR,8);
    always throw a Exception :
    java.sql.SQLException: Non supported character set: oracle-character-set-832
    at oracle.gss.util.NLSError.throwSQLException(NLSError.java:46)
    at oracle.sql.CharacterSetUnknown.failCharsetUnknown(CharacterSetFactoryThin.java:171)
    at oracle.sql.CharacterSetUnknown.convert(CharacterSetFactoryThin.java:135)
    at oracle.sql.CHAR.<init>(CHAR.java:133)
    at oracle.sql.CHAR.<init>(CHAR.java:157)
    at oracle.jdbc.oracore.OracleTypeCHAR.toDatum(OracleTypeCHAR.java:145)
    at oracle.jdbc.oracore.OracleType.toDatumArray(OracleType.java:145)
    at oracle.jdbc.oracore.OracleTypeCHAR.toDatumArray(OracleTypeCHAR.java:173)
    at oracle.jdbc.driver.OraclePreparedStatement.setPlsqlIndexTable(OraclePreparedStatement.java:2622)
    When can tell me how to solve it? Thanks

    I hava resolve this problem, we must add the
    class nls_charset12.zip to classpath.

  • JDBC OCI on Linux crashes, pls help

    Hi!
    I'm trying to use jdk 1.2.2, and jdbc2 of 8.1.6(classes12_01.zip), on linux Oracle8i 8.1.5, and at some moment the app crashes with a SIGSEGV, after making several sqlqueries:
    SIGSEGV 11* segmentation violation
    si_signo [11]: SIGSEGV 11* segmentation violation
    si_errno [0]: Success
    si_code [0]: SI_USER [pid: 0, uid: 0]
    stackpointer=0x44bbcff4
    Full thread dump Classic VM (1.2.2-L, green threads):
    "CaducatorThread" (TID:0x40eb5ab8, sys_thread_t:0x89af9e8, state:R) prio=1
    at oracle.jdbc.oci8.OCIDBAccess.open_statement(Native Method)
    at oracle.jdbc.oci8.OCIDBAccess.open(OCIDBAccess.java:458)
    at oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:288)
    at oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:307)
    at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedStatement.java:194)
    at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedStatement.java:177)
    at oracle.jdbc.driver.OracleConnection.prepareStatement(OracleConnection.java:339)
    at server.persistence.jdbc.JdbcProcessInstancePersMgr.getInstancesToDispose(JdbcProcessInstancePersMgr.java:1111)
    I tried with the examples on jdbc/OCI and they worked, but my app, that is multithreaded, crashes.
    Pls I don't know where to look anymore, I'm desperate.
    Million Thanks in advance.
    Mariano

    Try placing the jar file in the
    {cfmx-root}/runtime/servers/lib (create if not already there)
    directory if you have the server install or the
    {jrun-root}/servers/lib directory if you have the multiserver or
    j2ee install on JRun. Restart the Coldfusion applicatioin server.
    Ted Zimmerman

  • Oracle JDBC OCI doesn't work on Linux

    Hi,
    I'm using Oracle on Linux(RH6, kernel 2.2.13)
    Oracle works fine.
    JDBC Thin driver -OK!
    But java receives SIGSEV when I'm using JDBC OCI. More specific, it seems to be a problem with the so library associated to this driver, cause this SIGSEV happens in a native method.
    Help?

    Have you posted this question to the JDBC/SQLJ Users group on Technet.
    This is a JSP users group.

  • Execution of first request takes lot of time with JDBC OCI

    Hi,
    We are having an application which connects to Oracle server(10g Enterprise Edition Release 10.2.0.4.0 64bit) using Oracle JDBC OCI driver(10.2.0.1.0 production (10g R2)).
    Everything works fine.
    But what we observed is randomly the first request to the server vai JDBC driver in a day takes lot of time, varies from 5-15 minutes.
    If we execute the request again it executed immediately
    What we observed while debugging is preparedStatement.executeQuery() is taking time.
    We enabled logging at the JDBC driver layer and a snapshot isgiven below. Between T2CPreparedStatement.doDefineExecuteFetch () and T2CPreparedStatement.execute_for_rows () it takes 5 minutes. Any idea why it takes this much time and reason for it? Oracle driver is not throwing any exceptions
    *4-apr-2011 4:00:01* oracle.jdbc.driver.T2CPreparedStatement doDefineExecuteFetch
    FINE: T2CPreparedStatement.doDefineExecuteFetch ()
    *4-apr-2011 4:05:12* oracle.jdbc.driver.T2CPreparedStatement executeForRows
    FINE: T2CPreparedStatement.execute_for_rows () returns: void
    Detailed jdbc log is below
    -apr-2011 4:00:01 oracle.jdbc.driver.OracleStatement doExecuteWithTimeout
    FINE: OracleStatement.doExecuteWithTimeout() needToPrepareDefineBuffer = false
    4-apr-2011 4:00:01 oracle.jdbc.driver.PhysicalConnection needLine
    FINE: PhysicalConnection.needLine()--no return
    4-apr-2011 4:00:01 oracle.jdbc.driver.PhysicalConnection registerHeartbeat
    FINE: PhysicalConnection.registerHeartbeat()
    4-apr-2011 4:00:01 oracle.jdbc.driver.OracleStatement executeMaybeDescribe
    FINE: OracleStatement.execute_maybe_describe() rowPrefetchChanged = false, needToParse = false, needToPrepareDefineBuffer = false, columnsDefinedByUser = false
    4-apr-2011 4:00:01 oracle.jdbc.driver.T2CPreparedStatement executeForRows
    FINE: T2CPreparedStatement.execute_for_rows (executed_for_describe = false)
    4-apr-2011 4:00:01 oracle.jdbc.driver.T2CPreparedStatement doDefineExecuteFetch
    FINE: T2CPreparedStatement.doDefineExecuteFetch ()
    4-apr-2011 4:05:12 oracle.jdbc.driver.T2CPreparedStatement executeForRows
    FINE: T2CPreparedStatement.execute_for_rows () returns: void
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleStatement executeMaybeDescribe
    FINE: OracleStatement.execute_maybe_describe():return validRows = 1, needToPrepareDefineBuffer = false
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleStatement doExecuteWithTimeout
    FINE: OracleStatement.doExecuteWithTimeout():return validRows = 1, needToPrepareDefineBuffer = false
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl next
    FINE: OracleResultSetImpl.next(): closed=false
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl next
    FINER: closed=false, statement.currentRow=-1, statement.totalRowsVisited=0, statement.maxRows=0, statement.validRows=1, statement.gotLastBatch=true
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl getString
    INFO: OracleResultSetImpl.getString(columnIndex=1)
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl wasNull
    INFO: OracleResultSetImpl.wasNull()
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl getString
    INFO: OracleResultSetImpl.getString(columnIndex=2)
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl wasNull
    INFO: OracleResultSetImpl.wasNull()
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl getString
    INFO: OracleResultSetImpl.getString(columnIndex=3)
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl wasNull
    INFO: OracleResultSetImpl.wasNull()
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl wasNull
    INFO: OracleResultSetImpl.wasNull()
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl getTimestamp
    INFO: OracleResultSetImpl.getTimestamp(columnIndex=4)
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl wasNull
    INFO: OracleResultSetImpl.wasNull()
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl wasNull
    INFO: OracleResultSetImpl.wasNull()
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl next
    FINE: OracleResultSetImpl.next(): closed=false
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl next
    FINER: closed=false, statement.currentRow=0, statement.totalRowsVisited=1, statement.maxRows=0, statement.validRows=1, statement.gotLastBatch=true
    4-apr-2011 4:05:12 oracle.jdbc.driver.PhysicalConnection needLine
    FINE: PhysicalConnection.needLine()--no return
    4-apr-2011 4:05:12 oracle.jdbc.driver.T2CPreparedStatement closeQuery
    FINE: T2CPreparedStatement.closeQuery ()
    4-apr-2011 4:05:12 oracle.jdbc.driver.T2CPreparedStatement closeQuery
    FINE: T2CPreparedStatement.closeQuery () returns: void
    4-apr-2011 4:05:12 oracle.jdbc.driver.OracleResultSetImpl close
    INFO: OracleResultSetImpl.close()
    Regards
    Sunil

    Hi,
    Thanks for the reply
    - SQL may vary. Its not the same query which takes time always. The same query executed immediately(using another connection from pool) works perfectly
    - If there is a failover or stale connection getting closed or timeout, will JDBC driver thhrows exdeption? I didn't see any exceptions in the driver logs. Is there anyway to identify whether failover or timeout is happening?
    Some other points
    - The application uses connection pooling. This means that connections are created in the beginning and kept in the pool. And it may be in the pool for 72 hours or , before this issue happens
    - Application uses prepared statements and the statements are preapred and kept and re used later. So the query which take s more time might be prepared before 48 hours or so.
    - This is not happening every day. Many times the pattern is , it happens after 60-72 hours after application is started.
    Sunil

  • JDBC OCI-8

    I want to use the Oracle OCI drivers. In Jdeveloper 3.1 s Connection Manager when I select Oracle JDBC OCI-8 Driver and if I click on Test Connection button I am getting the following Error Message.
    Error Message: No ocijdbc8 in java.library.path
    Dose any one knows about this? If so, Please let me know.
    Thanks
    Srini
    null

    you have to install client 8.1.6
    Ofir
    [email protected]

Maybe you are looking for