Oracle server side jdbc thin driver throws ORA-01017
We upgraded our database to 11.2.0.1 from 9.2.0.6.
When we try to connect to an external database from Oracle JVM using server side jdbc thin driver, it throws invalid user id/password error.
The below test code simulates the issue and is not working on the upgraded instance. The same code is working in fine in other 11.2.0.1 instances. It worked fine before upgrade. In all cases, we are connecting to the same target database instance which is also in 11.2.0.1. It fails only on this database.
SEC_CASE_SENSITIVE_LOGON is set to false.
Any inputs will be highly appreciated.
Code:_
create or replace and compile java source named TestConn as
import java.sql.SQLException;
import oracle.jdbc.OracleDriver;
import oracle.jdbc.OracleConnection;
import java.sql.DriverManager;
public class TestConn {
public static String runTest() {
String msg = "Start";
OracleConnection tempOC = null;
try {
String pUrl = "jdbc:oracle:thin:@dev:1521:dev";
String pUser = "tst_user";
String pPwd = "dummy";
DriverManager.registerDriver (new oracle.jdbc.OracleDriver());
tempOC = (OracleConnection)DriverManager.getConnection(pUrl, pUser, pPwd);
msg = "Success";
} catch (SQLException sqle) {
System.out.println(sqle.toString());
sqle.printStackTrace();
msg = "Failure";
return msg;
CREATE OR REPLACE FUNCTION test_conn RETURN VARCHAR2
AS LANGUAGE JAVA
NAME 'TestConn.runTest() return java.lang.String';
set serverout on
declare
c varchar2(4000);
begin
dbms_java.set_output(5000);
c:=test_conn();
dbms_output.put_line(c);
end;
/ Error Message_
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:388)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:381)
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:564)
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:359)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java)
at java.sql.DriverManager.getConnection(DriverManager.java)
at java.sql.DriverManager.getConnection(DriverManager.java)
at TestConn.runTest(TESTCONN:22) Edited by: sskumar on Mar 6, 2011 1:12 PM
At the time our issue was resolved, the bug was not published. And, I was told, there was no information in metalink about the isue. I am not sure whether they published some thing in the last few weeks.
This is what resolved our issue.
Step 1: alter system set java_jit_enabled=FALSE;
Step 2: Try your test case. If it is the same issue as ours, your test case will be successful. If it succeeds, Go to step 3. If it does not succeed, it is a different issue.
Step 3: alter system set java_jit_enabled=TRUE;
Step 4: Run your test case. If it is the same issue, it is expected to fail. Go to Step 5 in case of failure.
Step 5: Delete all rows from table java$mc$
Step 6: Restart the database
Step 7: Run your test case. It is expected to be successful.
Similar Messages
-
Insert data 32K into a column of type LONG using the oracle server side jdbc driver
Hi,
I need to insert data of more than 32k into a
column of type LONG.
I use the following code:
String s = "larger then 32K";
PreparedStatement pstmt = dbcon.prepareStatement(
"INSERT INTO TEST (LO) VALUES (?)");
pstmt.setCharacterStream(1, new StringReader(s), s.length());
pstmt.executeUpdate();
dbcon.commit();
If I use the "standard" oracle thin client driver from classes_12.zip ("jdbc:oracle:thin:@kn7:1521:kn7a") every thing is working fine. But if I use the oracle server side jdbc driver ("jdbc:default:connection:") I get the exception java.sql.SQLException:
Datasize larger then max. datasize for this type: oracle.jdbc.kprb.KprbDBStatement@50f4f46c
even if the string s exceeds a length of 32767 bytes.
I'm afraid it has something to do with the 32K limitation in PL/SQL but in fact we do not use any PL/SQL code in this case.
What can we do? Using LOB's is not an option because we have client software written in 3rd party 4gl language that is unable to handle LOB's.
Any idea would be appreciated.
Thomas Stiegler
nullIn rdbms 8.1.7 "relnotes" folder, there is a "Readme_JDBC.txt" file (on win nt) stating
Known Problems/Limitations In This Release
<entries 1 through 3 omiited for brevity >
4. The Server-side Internal Driver has the following limitation:
- Data access for LONG and LONG RAW types is limited to 32K of
data. -
Able to make dirty read using Oracle 9i and JDBC thin driver v 9.2.0
I've searched this forum and did not see anything to directly answer my question.
I checked the Oracle JDBC Frequently Asked Questions...
ditto (perhaps due to the fact that it was last updated: 22 June 2001).
So here is my question, and thank you in advance for any insight (apologies if I have missed finding an already answered question):
Section 19-15 of:
"JDBC Developerâs Guide and Reference"
(which is for Oracle 9i database)
downloadable from:
http://download-east.oracle.com/docs/cd/B10501_01/java.920/a96654.pdf
is entitled:
"Transaction Isolation Levels and Access Modes"
The section seems to indicate that
if JDBC connection A is setup with:
setAutoCommit(false)
setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED)
and then used to perform an update on a row (no commit(), rollback(), or close() yet) ...
then JDBC connection B (setup in the same way) will be prevented from
making a dirty read of that same row.
While this behavior (row-level locking) occurs correctly when using MS SQL Server 2000,
it is not occuring correctly with Oracle 9i and the Oracle Thin JDBC driver version 9.2.0.
The test case I have shows that with Oracle, connection B is able to make a dirty read
successfully in this case.
Am I doing something wrong here ?
Again, MS SQL Server correctly blocks connection B from making the Read until Connection A
has been either committed, rolled back, or closed, at which time connection B is able to
complete the read because the row is now unlocked.
Is there a switch I must throw here ?
Again, any help is greatly appreciated.Thanks for the response.
I understand what you are saying...
that readers don't block writers in Oracle (the same is true in SQL Server 2000).
However, I don't see how my test case is working correctly with Oracle (the exact same code acting as I'm thinking it should with SQL Server, but I still think it is acting incorrectly with Oracle).
I have transaction A do this:
update <table> set <column2>=<value> where <column1>='1'
then I use Thread.sleep() to make that program hang around for a few minutes.
Meanwhile I sneak off and start another program which begins transaction B. I have transaction B do this:
select * from <table> where <column1>='1'
and the read works immediately (no blocking... just as you have said) however, transaction A is still sleeping, it has not called commit() or rollback() yet.
So what if transaction A were to call rollback(), the value read by transaction B would be incorrect wouldn't it ?
Both A and B use setAutoCommit(false) to start their transactions, and then call setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED).
Isn't that supposed to guarantee that a reader can only read what is committed ?
And if a row is in "flux"... in the process of having one or more values changed, then the database cannot say what the value will be ?
I can almost see what you are saying.
In letting the reader have what it wants without making it wait, I suppose it could be said that Oracle is holding true to the "only let committed data be read"
So if that's it, then what if I want the blocking ?
I want an entire row to be locked until whoever it in the middle of updating, adding, or removing it has finished.
Do you know if that can be done with Oracle ? And how ?
Thanks again for helping me. -
Connect to oracle 8i using jdbc thin driver
Hi developers....
I am a new for java. jdk1.5.1,oracle 8i these are installed in my system.those are working well.Now i want to connect oracle database using Thindriver.I have no idea to write a code.Any one give an example for me.
My system name:developer
java :jdk1.5.1
oracle :8i
Thank u
with reguards
sure....:)http://www.oracle.com/technology/sample_code/tech/java/sqlj_jdbc/index.html
http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq.html -
OS Authentication using JDBC Thin driver
Hi
I have a problem while connecting to Oracle database using JDBC Thin Driver, Basically I am trying to connect using OS Authentication. The following explains clearly what I am trying to do.
String connectionURL = "jdbc:oracle:thin:@localhost:1521:XYZ";
String userName = "/";
String password = "";
java.util.Properties info = new java.util.Properties();
info.setProperty("user",userName);
info.setProperty("password",password);
conn = DriverManager.getConnection(connectionURL,info);
When executing the code I am getting an exception as follows.
java.sql.SQLException: Null user or password not supported in THIN driver
When i searched in the Oracle site i got the below information
Note:
By default, the JDBC driver retrieves the OS username from the user.name system property, which is set by the JVM. If the JDBC driver is unable to retrieve this system property or if you want to override the value of this system property, then you can use the OracleConnection.CONNECTION_PROPERTY_THIN_VSESSION_OSUSER connection property. For more information, see Oracle Javadoc.
I want to know how to set the OracleConnection.CONNECTION_PROPERTY_THIN_VSESSION_OSUSER connection property.
Advance ThanksBased on your code, when you try to connect your username is null and the password is "/". You are not going to be able to get the OS password using Java.
-
Bug in Oracle JDBC thin driver (parameter order)
[ I'd preferably send this to some Oracle support email but I
can't find any on both www.oracle.com and www.technet.com. ]
The following program illustrates bug I found in JDBC Oracle thin
driver.
* Synopsis:
The parameters of prepared statement (I tested SELECT's and
UPDATE's) are bound in the reverse order.
If one do:
PreparedStatement p = connection.prepareStatement(
"SELECT field FROM table WHERE first = ? and second = ?");
and then bind parameter 1 to "a" and parameter to "b":
p.setString(1, "a");
p.setString(2, "b");
then executing p yields the same results as executing
SELECT field FROM table WHERE first = "b" and second = "a"
although it should be equivalent to
SELECT field FROM table WHERE first = "a" and second = "b"
The bug is present only in "thin" Oracle JDBC driver. Changing
driver to "oci8" solves the problem.
* Version and platform info:
I detected the bug using Oracle 8.0.5 server for Linux.
According to $ORACLE_HOME/jdbc/README.doc that is
Oracle JDBC Drivers release 8.0.5.0.0 (Production Release)
* The program below:
The program below illustrates the bug by creating dummy two
column table, inserting the row into it and then selecting
the contents using prepared statement. Those operations
are performed on both good (oci8) and bad (thin) connections,
the results can be compared.
You may need to change SID, listener port and account data
in getConnecton calls.
Sample program output:
$ javac ShowBug.java; java ShowBug
Output for both connections should be the same
--------------- thin Driver ---------------
[ Non parametrized query: ]
aaa
[ The same - parametrized (should give one row): ]
[ The same - with buggy reversed order (should give no answers):
aaa
--------------- oci8 driver ---------------
[ Non parametrized query: ]
aaa
[ The same - parametrized (should give one row): ]
aaa
[ The same - with buggy reversed order (should give no answers):
--------------- The end ---------------
* The program itself
import java.sql.*;
class ShowBug
public static void main (String args [])
throws SQLException
// Load the Oracle JDBC driver
DriverManager.registerDriver(new
oracle.jdbc.driver.OracleDriver());
System.out.println("Output for both connections should be the
same");
Connection buggyConnection
= DriverManager.getConnection
("jdbc:oracle:thin:@localhost:1521:ORACLE",
"scott", "tiger");
process("thin Driver", buggyConnection);
Connection goodConnection
= DriverManager.getConnection ("jdbc:oracle:oci8:",
"scott", "tiger");
process("oci8 driver", goodConnection);
System.out.println("--------------- The end ---------------");
public static void process(String title, Connection conn)
throws SQLException
System.out.println("--------------- " + title + "
Statement stmt = conn.createStatement ();
stmt.execute(
"CREATE TABLE bug (id VARCHAR(10), val VARCHAR(10))");
stmt.executeUpdate(
"INSERT INTO bug VALUES('aaa', 'bbb')");
System.out.println("[ Non parametrized query: ]");
ResultSet rset = stmt.executeQuery(
"select id from bug where id = 'aaa' and val = 'bbb'");
while (rset.next ())
System.out.println (rset.getString (1));
System.out.println("[ The same - parametrized (should give one
row): ]");
PreparedStatement prep = conn.prepareStatement(
"select id from bug where id = ? and val = ?");
prep.setString(1, "aaa");
prep.setString(2, "bbb");
rset = prep.executeQuery();
while (rset.next ())
System.out.println (rset.getString (1));
System.out.println("[ The same - with buggy reversed order
(should give no answers): ]");
prep = conn.prepareStatement(
"select id from bug where id = ? and val = ?");
prep.setString(1, "bbb");
prep.setString(2, "aaa");
rset = prep.executeQuery();
while (rset.next ())
System.out.println (rset.getString (1));
stmt.execute("DROP TABLE bug");
nullHorea
In the ejb-jar.xml, in the method a cursor is closed, set <trans-attribute>
to "Never".
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name></ejb-name>
<method-name></method-name>
</method>
<trans-attribute>Never</trans-attribute>
</container-transaction>
</assembly-descriptor>
Deepak
Horea Raducan wrote:
Is there a known bug in Oracle JDBC thin driver version 8.1.6 that would
prevent it from closing the open cursors ?
Thank you,
Horea -
Oracle 7 - JDBC Thin driver - connect - compatibility
When logging on to an Oracle server v.7.2.3.0.0 with JDBC-thin
driver (classes111.zip), I get the message:
ORA-01017 invalid username/ password; logon denied
even if the password, username and connection string is correct.
The connection worked OK until some work was performed on the
database and some changes with SQL*Net was done.
I thought the driver worked OK with all versions of SQL*Net
listeners?
The database can be connected to with SQL*Plus.
nullI have the same problem trying to connect to database cache on iAS with iAS.
-
Problem using JDBC Thin driver with Oracle 8i Personal Edition
Hi all, I have an issue I have been unable to figure out. In order to make my code as portable as possible I am using the JDBC thin driver to access my database. I have been able to connect to an instance of Oracle 8i on a Sun box by hardcoding the following string into getConnection() call:
conn = DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(COMMUNITY=tcp.world)(PROTOCOL=TCP)(Host=<myhostname>)(Port=1521))(ADDRESS=(COMMUNITY=tcp.w orld)(PROTOCOL=TCP)(Host = <myhostname>)(Port = 1526)))(CONNECT_DATA = (SID = <mysidname>)))", <myuser>, <mypassword>);
My problem is that I cannot figure out what string to use to connect to my local instance of Oracle 8i Personal. I used the following string (the sid I got from the looking at the init.ora file):
conn = DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(COMMUNITY=tcp.world)(PROTOCOL=TCP)(Host=localhost)(Port=1521))(ADDRESS=(COMMUNITY=tcp.world)(PRO TOCOL=TCP)(Host = localhost)(Port = 1526)))(CONNECT_DATA = (SID = orcl)))", "scott", "tiger");
That didn't work, so I took the only entry found in my tnsnames.ora file in as:
conn = DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)))(CONNECT_DATA = (SID = PLSExtProc)(PRESENTATION = RO)))", "scott", "tiger");
I am not knowing what is wrong, but that didn't work neither. Any suggestions would be highly appreciated.
Thanks....
nulltry this:
conn = DriverManager.getConnection("jdbc:oracle:thin:scott/tiger:@hostname:1521:sid");
or use system/manager as username/passward
null -
Jdbc oracle jdbc-thin driver subname
I am working on Windows 2000 environment, using oracle8i 8.1.7 JDBC-Thin driver for use with JDK 1.2.x. The oralce8i 8.1.7 database is on another linux box. I can access the linux box through its ip address, but not by its hostname since it's not accessiable by the dns server. In my code, in the JDBCUrl, I used ip address instead of the hostname, e.g. "jdbc:oracle:thin:@10.0.113.108:1521:ora1". But I got the error like: "java.sql.SQLException: Io exception: The Network Adapter could not establish the connection". If I add a entry in my working machine's hosts file to map the hostname, I can fix the problem. But I don't know if this is the solution, or there is other better solutions.
Thanks
nullUsing a hosts file entry is a common solution for problem where the dns lookup does not contain an entry for a RDBMS server platform.
The real solution is to resolve this issue :
"where the dns lookup does not contain an entry for a RDBMS server platform." -
Oracle JDBC Thin Driver and Firewall Problem
Hi!
We have Oracle 8.1.5 and Websphere App Server. There is a
firewall between the two. A servlet creates a connection pool
(not that of Wesphere's). The frontend is JSP/HTML (no applets).
The servlet uses the Oracle JDBC Thin Driver for DB Connections.
The problem is - Once the connection is freed, the connection
pool is not being able to retrieve it and hence it created
another one, thus reaching the max. # of connections and the
system hangs. Restarting the DB service flushes the connection
and the application starts running again...
There was a similar problem discussed in this forums long ago. I
have not yet tried mentioning the firwall port and IP in the
connection string. But apart from that, is there any other
setting I need to do (on firewall or for the connectionstring)
to deal with this problem?
Someone had suggested to punch a hole in the firewall for the DB
port - but we can not really do that in the current scenario...
I would appreciate if anyone could share their experience
regarding how they resolved this issue.
Thanks in advance,
Vijaya.One more question -
Can we use Oracle JDBC OCI driver? We do not have any appletes...
Does it have firewall issues too? Is there any other driver that
we can use?
Thanks,
Vijaya. -
Jdbc thin driver to connect oracle as internal
I need to connect to Oracle as Internal using jdbc driver, is there a way we can do this using jdbc thin driver. Actually I don't want to pass username and password as it will be harcoded in a properties file.
Please let me know.Hi Minol,
Have a look at this code example that shows how to Connect to Database as internal ( as sysdba ). In this code sample the properties are hard-coded, you can supply these Properties by loading them from a properties file.
Connecting to Oracle Database with DBA privileges
http://myjdbc.tripod.com/basic/codeindex.html
The code snippet to load properties from a properties file
//Import IO related classes
import java.io.IOException;
// Necessary support classes
import java.util.Properties;
import java.util.Enumeration;
import java.util.ResourceBundle;
* This method reads a properties file which is passed as
* the parameter to it and load it into a java Properties
* object and returns it.
* @param file File path
* @return Properties The properties object
* @exception IOException if loading properties file fails
* @since 1.0
public static Properties loadParams(String file)
throws IOException {
// Loads a ResourceBundle and creates Properties from it
Properties prop = new Properties();
ResourceBundle bundle = ResourceBundle.getBundle(file);
// Retrieve the keys and populate the properties object
Enumeration enum = bundle.getKeys();
String key = null;
while (enum.hasMoreElements()) {
key = (String) enum.nextElement();
prop.put(key, bundle.getObject(key));
return prop;
}Regards
Elango. -
Jdbc thin driver connect oracle as internal
I need to connect to Oracle as Internal using jdbc driver, is there a way we can do this using jdbc thin driver. Actually I don't want to pass username and password as it will be harcoded in a properties file.
Please let me know.Hi Minol,
Have a look at this code example that shows how to Connect to Database as internal ( as sysdba ). In this code sample the properties are hard-coded, you can supply these Properties by loading them from a properties file.
Connecting to Oracle Database with DBA privileges
http://myjdbc.tripod.com/basic/codeindex.html
The code snippet to load properties from a properties file
//Import IO related classes
import java.io.IOException;
// Necessary support classes
import java.util.Properties;
import java.util.Enumeration;
import java.util.ResourceBundle;
* This method reads a properties file which is passed as
* the parameter to it and load it into a java Properties
* object and returns it.
* @param file File path
* @return Properties The properties object
* @exception IOException if loading properties file fails
* @since 1.0
public static Properties loadParams(String file)
throws IOException {
// Loads a ResourceBundle and creates Properties from it
Properties prop = new Properties();
ResourceBundle bundle = ResourceBundle.getBundle(file);
// Retrieve the keys and populate the properties object
Enumeration enum = bundle.getKeys();
String key = null;
while (enum.hasMoreElements()) {
key = (String) enum.nextElement();
prop.put(key, bundle.getObject(key));
return prop;
}Regards
Elango. -
Sql_trace does not work for Java app using Oracle JDBC thin driver
Hi,
I'm using Oracle 8.1.7. I enabled sql trace at instance level by setting sql_trace and timed_statistics to true in init.ora. I restarted the db instance. I wrote a stand-alone java application which used Oracle JDBC thin driver(classes12.zip) to make a connection to my db instance, do some select statements, and close the connection. There were no trace files generated in the folder specified by udump_dest variable. However, if I used sqlplus or dba studio, I saw trace files generated. Has anyone got Oracle sql trace work for JDBC calls from java apps.
Thanks in advance!Hi,
I'm using Oracle 8.1.7. I enabled sql trace at instance level by setting sql_trace and timed_statistics to true in init.ora. I restarted the db instance. I wrote a stand-alone java application which used Oracle JDBC thin driver(classes12.zip) to make a connection to my db instance, do some select statements, and close the connection. There were no trace files generated in the folder specified by udump_dest variable. However, if I used sqlplus or dba studio, I saw trace files generated. Has anyone got Oracle sql trace work for JDBC calls from java apps.
Thanks in advance! -
Hanging problem with Oracle JDBC thin driver
Hi. We have an application running on top of WLS 6.1 accessing Oracle 8I with oracle's
JDBC thin driver. Under stress testing, it appears to hang sometimes. Thread dump
shows that many threads seem to be stuck at the same line of code in JDBC driver
(at oracle.sql.NUMBER._isPositive(NUMBER.java:2882)). Has anyone run into similar
issue? Any help is much appreciated.
"ExecuteThread: '1' for queue: 'default'" daemon prio=5 tid=0xe18960 nid=0xf wai
ting on monitor [0xb3680000..0xb36819d8]
at oracle.sql.NUMBER._isPositive(NUMBER.java:2882)
at oracle.sql.NUMBER._fromLnxFmt(NUMBER.java:2953)
at oracle.sql.NUMBER.toBigDecimal(NUMBER.java:557)
at oracle.sql.NUMBER.bigDecimalValue(NUMBER.java:1872)
at oracle.jdbc.dbaccess.DBConversion.NumberBytesToBigDecimal(DBConversion.ja
va:1771)
at oracle.jdbc.driver.OracleStatement.getBigDecimalValue(OracleStatement.jav
a:3357)
at oracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
66)
at oracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
23)
at oracle.jdbc.driver.OracleResultSetImpl.getObject(OracleResultSetImpl.java
:401)
at weblogic.jdbc.jts.ResultSet.getObject(ResultSet.java:268)
at weblogic.jdbc.rmi.internal.ResultSetImpl.getObject(ResultSetImpl.java:592
at weblogic.jdbc.rmi.internal.ResultSetStraightReader.getObject(ResultSetStr
aightReader.java:198)
at weblogic.jdbc.rmi.SerialResultSet.getObject(SerialResultSet.java:682)
"ExecuteThread: '6' for queue: 'default'" daemon prio=5 tid=0x6d93a8 nid=0x14
wa
iting on monitor [0xb3180000..0xb31819d8]
at oracle.sql.NUMBER._isPositive(NUMBER.java:2882)
at oracle.sql.NUMBER._fromLnxFmt(NUMBER.java:2953)
at oracle.sql.NUMBER.toBigDecimal(NUMBER.java:557)
at oracle.sql.NUMBER.bigDecimalValue(NUMBER.java:1872)
at oracle.jdbc.dbaccess.DBConversion.NumberBytesToBigDecimal(DBConversion.ja
va:1771)
at oracle.jdbc.driver.OracleStatement.getBigDecimalValue(OracleStatement.jav
a:3357)
at oracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
66)
at oracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
23)
at oracle.jdbc.driver.OracleResultSetImpl.getObject(OracleResultSetImpl.java
:401)
at weblogic.jdbc.jts.ResultSet.getObject(ResultSet.java:268)
at weblogic.jdbc.rmi.internal.ResultSetImpl.getObject(ResultSetImpl.java:592
at weblogic.jdbc.rmi.internal.ResultSetStraightReader.getObject(ResultSetStr
aightReader.java:198)
at weblogic.jdbc.rmi.SerialResultSet.getObject(SerialResultSet.java:682)Try get the latest thin driver from oracle and place it in the beginning of
the classpath in the server startup script to use it. This seems like a
oracle thin driver bug, the newer driver might help.
sree
"Andrew Dong" <[email protected]> wrote in message
news:[email protected]...
>
Hi. We have an application running on top of WLS 6.1 accessing Oracle 8Iwith oracle's
JDBC thin driver. Under stress testing, it appears to hang sometimes.Thread dump
shows that many threads seem to be stuck at the same line of code in JDBCdriver
(at oracle.sql.NUMBER._isPositive(NUMBER.java:2882)). Has anyone run intosimilar
issue? Any help is much appreciated.
"ExecuteThread: '1' for queue: 'default'" daemon prio=5 tid=0xe18960nid=0xf wai
ting on monitor [0xb3680000..0xb36819d8]
at oracle.sql.NUMBER._isPositive(NUMBER.java:2882)
at oracle.sql.NUMBER._fromLnxFmt(NUMBER.java:2953)
at oracle.sql.NUMBER.toBigDecimal(NUMBER.java:557)
at oracle.sql.NUMBER.bigDecimalValue(NUMBER.java:1872)
atoracle.jdbc.dbaccess.DBConversion.NumberBytesToBigDecimal(DBConversion.ja
va:1771)
atoracle.jdbc.driver.OracleStatement.getBigDecimalValue(OracleStatement.jav
a:3357)
atoracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
66)
atoracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
23)
atoracle.jdbc.driver.OracleResultSetImpl.getObject(OracleResultSetImpl.java
:401)
at weblogic.jdbc.jts.ResultSet.getObject(ResultSet.java:268)
atweblogic.jdbc.rmi.internal.ResultSetImpl.getObject(ResultSetImpl.java:592
atweblogic.jdbc.rmi.internal.ResultSetStraightReader.getObject(ResultSetStr
aightReader.java:198)
atweblogic.jdbc.rmi.SerialResultSet.getObject(SerialResultSet.java:682)
>
"ExecuteThread: '6' for queue: 'default'" daemon prio=5 tid=0x6d93a8nid=0x14
wa
iting on monitor [0xb3180000..0xb31819d8]
at oracle.sql.NUMBER._isPositive(NUMBER.java:2882)
at oracle.sql.NUMBER._fromLnxFmt(NUMBER.java:2953)
at oracle.sql.NUMBER.toBigDecimal(NUMBER.java:557)
at oracle.sql.NUMBER.bigDecimalValue(NUMBER.java:1872)
atoracle.jdbc.dbaccess.DBConversion.NumberBytesToBigDecimal(DBConversion.ja
va:1771)
atoracle.jdbc.driver.OracleStatement.getBigDecimalValue(OracleStatement.jav
a:3357)
atoracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
66)
atoracle.jdbc.driver.OracleStatement.getObjectValue(OracleStatement.java:41
23)
atoracle.jdbc.driver.OracleResultSetImpl.getObject(OracleResultSetImpl.java
:401)
at weblogic.jdbc.jts.ResultSet.getObject(ResultSet.java:268)
atweblogic.jdbc.rmi.internal.ResultSetImpl.getObject(ResultSetImpl.java:592
atweblogic.jdbc.rmi.internal.ResultSetStraightReader.getObject(ResultSetStr
aightReader.java:198)
atweblogic.jdbc.rmi.SerialResultSet.getObject(SerialResultSet.java:682)
>
> -
Problem in connecting to database using oracle jdbc thin driver
hi
i am trying to connect to a database using oracle thin driver.
i am getting following error:
java.sql.sqlexception:Io exception: the network adapter could not establish the connection
Io exception: the network adapter could not establish the connection
the connection string has the property of using a dedicated server
for this reason i have put USE_DEDICATED_SERVER=ON in sqlnet.ora file...
we did not face this problem while connecting to other databases which do not have the property of dedicated server in their connection string in tnsnames.ora file.
please suggest a solution for this.
thanks and regards,
asifIf you are using the thin driver, sqlnet.ora does not come into play. None of Oracle networking does. That is one of the great things about using the thin driver, no need to have the client installed.
That error is due to incorrect connection info you are supplying or the machine you are connection from can't ping the machine it is trying to connect to.
Maybe you are looking for
-
VS2012 removing Package folder for SharePoint 2013
Hi, Has anybody faced a problem with Visual studio 2012 where it removes the package folder automatically when you open the project and working in a team. After that it throws error in publishing and deploying and one has to readd this folder from ba
-
Web Services error with BI Publisher
I'm attempting to test a Web Service to call BI Publisher. In theory you should be able to prove xml data as input to ReportRequest with reportDataFileName attribute. In JDeveloper, I set the path of the xml file like this: repRequest.setReportDataFi
-
Hi all, I would like to copy a directory (and all its contents - except any .svn directories ) to the system clipboard. Then outside of my java app I would like to be able to paste the filtered fileset to the filesystem. Is this even possible? Has an
-
When trying to install Create Cloud get A12E5 - meaning?
I am using the 30 day trial and downloaded it to a desktop only to discover I really need it on my laptop. So I'm attempting to download on my laptop but now I get error A12E5. Does this have something to do with only allowing one download? The er
-
Cannot find Photoshop CC after download
Have used Adobe Application Manager to download Photoshop CC. It now says it is up to date but I cannot find it on my Mac. Where is it? Can I start all over again? Double clicking on the icon within Adobe Application Manager does nothing. I am runnin