9i jdbc driver change causes problems
Hello all,
I was wondering if anyone had any problems with jdbc when migrating to oracle 9i. We are using timestamps from java which were mapped to dates. In oracle there is a function which takes a date. Now this won't work anymore as the mapping changed. Question is, did anyone use the V8Compatibility flag before? I tried it and it doesn't seem to work. When looking at the jdbc implementation it seems to me that something is not implemented yet.
Any feedback?
Thanks in advance,
Rein
9i jdbc driver change causes problems
Similar Messages
-
Oracle 8.1.7 driver limit causes problems with CMP
The information below is from Oracle's site and has been noted by a few
people on various message groups. We had upgraded to 8.1.7 but hadn't put
the latest classes12.zip (June 2001) in our classpath. When we do, we get
the following error from the driver/generated code. We believe this is
because we are hitting the limit cited below. I don't know why the Oracle
driver has this limit, but since WL generates this code for the EB, I don't
see an easy way for us to avoid it.
Anyone have any comments on this? Is my interpretation of the stacktrace
correct? If we go back to the old classes12.zip (June 2000) then we don't
have this problem. But in addition to wanting to run the matching zip file
with the version of the DB, we also want to use some of the functionality in
the 8.1.7 zip. Does BEA have a workaround for CMP?
java.rmi.UnexpectedException: Unexpected exception in
sync.server.system.SystemSessionDataBean.setSessionData():
java.sql.SQLException: ORA-01483: invalid length for DATE or NUMBER bind
variable
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:169)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:822)
at
oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1610
at
oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1535)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java
:2053)
at
oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedState
ment.java:398)
at
weblogic.jdbc20.pool.PreparedStatement.executeUpdate(PreparedStatement.java:
47)
at
sync.server.system.SystemSessionDataPSWebLogic_CMP_RDBMS.update(SystemSessio
nDataPSWebLogic_CMP_RDBMS.java:318)
at
sync.server.system.SystemSessionDataPSWebLogic_CMP_RDBMS.store(SystemSession
DataPSWebLogic_CMP_RDBMS.java:284)
at weblogic.ejb.internal.EntityEJBContext.store(EntityEJBContext.java:192)
at
weblogic.ejb.internal.EntityEJBContext.beforeCompletion(EntityEJBContext.jav
a:227)
at
weblogic.ejb.internal.StatefulEJBObject.postInvokeNoTx(StatefulEJBObject.jav
a:355)
at weblogic.ejb.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:865)
Using Streams to Avoid Limits on setBytes() and setString()
There is a limit on the maximum size of the array which can be bound using
the PreparedStatement class setBytes() method, and on the size of the string
which can be bound using the setString() method.
Above the limits, which depend on the version of the server you use, you
should use setBinaryStream() or setCharacterStream() instead.
When connecting to an Oracle8 database, the limit for setBytes() is 2000
bytes (the maximum size of a RAW in Oracle8) and the limit for setString()
is 4000 bytes (the maximum size of a VARCHAR2 in Oracle8).
When connecting to an Oracle7 database, the limit for setBytes() is 255
bytes (the maximum size of a RAW in Oracle7) and the limit for setString()
is 2000 bytes (the maximum size of a VARCHAR2 in Oracle7).
The 8.1.6 Oracle JDBC drivers may not raise an error if you exceed the limit
when using setBytes() or setString(), but you may receive the following
error:
ORA-17070: Data size bigger than max size for this type
Future versions of the Oracle drivers will raise an error if the length
exceeds these limits.Joe Herbers wrote:
>
I added some debug output to verify that this problem is definitely caused
by the WL generated code/Oracle driver. To do this, I used
the -keepgenerated code on ejbc. Then I modified the generated code to
print the length of the byte array before calling setBytes. I compiled the
class and put an updated version in my bean jar.
When I run our test suite, I see hundreds of calls to setBytes with sizes
such as 315, 368, 1988, 2020. And then occasionally there are sizes of
41932 or 19409. These larger sizes are always followed by the ORA-01483
exceptions.
This appears to be certain confirmation that the problem is caused by the
8.1.7 driver's enforcement of the 4k limit on the methods that the
WL-generated code is using to map our Java byte[] to our Long Raw/BLOB field
in Oracle. Any suggestions for workarounds?Actually, it indicates the driver's being caught by the limitation that
Oracle itself imposes with setBytes(). This is a known issue I believe, and
you should ask support for a patch to ejbc that generates calls to setBinaryStream()
rather than setBytes().
Joe Weinstein
>
"Joe Herbers" <[email protected]> wrote in message
news:[email protected]...
We use WL 5.1, SP10. I've noticed that sp11 is now out, but it doesn'tseem
to have any fixes for this problem (it mentions Oracle 8.1.6, but not8.1.7,
which seems to be the release in which Oracle started enforcing thislimit).
We're kind of stuck at the moment, I'm surprised no one else hasencountered
this problem with WebLogic (I have seen postings elsewhere about it with
other AppServers)
"Slava Imeshev" <[email protected]> wrote in message
news:[email protected]...
Hi Joe,
From your CMP DD it's clear that you use WL 5.1. Which service pack
do you use?
AFAIR this problem was fixed in WL 6.1, though I'm not sure about
5.1. Could you use ejbc with -keepgenerated option and look at
SystemSessionDataPSWebLogic_CMP_RDBMS.java, particularly
how bind variable related to you LONG RAW? Is setBytes used? Or
it's something like setBinaryStream?
Regards,
Slava Imeshev
"Joe Herbers" <[email protected]> wrote in message
news:[email protected]...
The table has only three fields: two IDs (Number(18)) and a Long Raw
that
we
are storing a Hashtable in. The field seems to be filled fine most of
the
time. With the old driver, it always works. As soon as we switch thenew
driver in, certain operations fail consistently. I haven't verifiedthat
the size is indeed > 4k in these cases, but our error matches whatothers
have seen. Here's the CMP DD but I doubt that helps...
<weblogic-rdbms-bean>
<pool-name>oracle</pool-name>
<table-name>scc_sm_sys_sess_data</table-name>
<attribute-map>
<object-link>
<bean-field>mlSystemSessionDataID</bean-field>
<dbms-column>sys_sess_data_id</dbms-column>
</object-link>
<object-link>
<bean-field>mlSystemSessionID</bean-field>
<dbms-column>sys_sess_id</dbms-column>
</object-link>
<object-link>
<bean-field>mBSessionData</bean-field>
<dbms-column>sys_sess_data</dbms-column>
</object-link>
"Slava Imeshev" <[email protected]> wrote in message
news:[email protected]...
Hi Joe,
This limit defines limit written to oracle strings, raws, blobs and
clobs
when setBytes is used. It has nothing to do with the exception
you're
getting.
Could you show us your CMP deployment descriptor(s)?
Regards,
Slava Imeshev
"Joe Herbers" <[email protected]> wrote in message
news:[email protected]...
The information below is from Oracle's site and has been noted by
a
few
people on various message groups. We had upgraded to 8.1.7 but
hadn't
put
the latest classes12.zip (June 2001) in our classpath. When we
do,
we
get
the following error from the driver/generated code. We believe th
is
is
because we are hitting the limit cited below. I don't know why
the
Oracle
driver has this limit, but since WL generates this code for the
EB,
I
don't
see an easy way for us to avoid it.
Anyone have any comments on this? Is my interpretation of the
stacktrace
correct? If we go back to the old classes12.zip (June 2000) then
we
don't
have this problem. But in addition to wanting to run the matching
zip
file
with the version of the DB, we also want to use some of the
functionality
in
the 8.1.7 zip. Does BEA have a workaround for CMP?
java.rmi.UnexpectedException: Unexpected exception in
sync.server.system.SystemSessionDataBean.setSessionData():
java.sql.SQLException: ORA-01483: invalid length for DATE or
NUMBER
bind
variable
at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:169)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
atoracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:822)
at
oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1610
at
oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1535)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java
:2053)
at
oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedState
ment.java:398)
at
weblogic.jdbc20.pool.PreparedStatement.executeUpdate(PreparedStatement.java:
47)
at
sync.server.system.SystemSessionDataPSWebLogic_CMP_RDBMS.update(SystemSessio
nDataPSWebLogic_CMP_RDBMS.java:318)
at
sync.server.system.SystemSessionDataPSWebLogic_CMP_RDBMS.store(SystemSession
DataPSWebLogic_CMP_RDBMS.java:284)
atweblogic.ejb.internal.EntityEJBContext.store(EntityEJBContext.java:192)
at
weblogic.ejb.internal.EntityEJBContext.beforeCompletion(EntityEJBContext.jav
a:227)
at
weblogic.ejb.internal.StatefulEJBObject.postInvokeNoTx(StatefulEJBObject.jav
a:355)
atweblogic.ejb.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:865)
Using Streams to Avoid Limits on setBytes() and setString()
There is a limit on the maximum size of the array which can be
bound
using
the PreparedStatement class setBytes() method, and on the size of
the
string
which can be bound using the setString() method.
Above the limits, which depend on the version of the server you
use,
you
should use setBinaryStream() or setCharacterStream() instead.
When connecting to an Oracle8 database, the limit for setBytes()
is
2000
bytes (the maximum size of a RAW in Oracle8) and the limit forsetString()
is 4000 bytes (the maximum size of a VARCHAR2 in Oracle8).
When connecting to an Oracle7 database, the limit for setBytes()
is
255
bytes (the maximum size of a RAW in Oracle7) and the limit forsetString()
is 2000 bytes (the maximum size of a VARCHAR2 in Oracle7).
The 8.1.6 Oracle JDBC drivers may not raise an error if you exceed
the
limit
when using setBytes() or setString(), but you may receive the
following
error:
ORA-17070: Data size bigger than max size for this type
Future versions of the Oracle drivers will raise an error if thelength
exceeds these limits.
B.E.A. is now hiring! (12/14/01) If interested send a resume to [email protected]
DIRECTOR OF PRODUCT PLANS AND STRATEGY San Francisco, CA
E-SALES BUSINESS DEVELOPMENT REPRESENTATIVE Dallas, TX
SOFTWARE ENGINEER (DBA) Liberty Corner, NJ
SENIOR WEB DEVELOPER San Jose, CA
SOFTWARE ENGINEER (ALL LEVELS), CARY, NORTH CAROLINA San Jose, CA
SR. PRODUCT MANAGER Bellevue, WA
SR. WEB DESIGNER San Jose, CA
Channel Marketing Manager - EMEA Region London, GBR
DIRECTOR OF MARKETING STRATEGY, APPLICATION SERVERS San Jose, CA
SENIOR SOFTWARE ENGINEER (PLATFORM) San Jose, CA
E-COMMERCE INTEGRATION ARCHITECT San Jose, CA
QUALITY ASSURANCE ENGINEER Redmond, WA
Services Development Manager (Business Development Manager - Services) Paris, FRA; Munich, DEU
SENIOR SOFTWARE ENGINEER (PLATFORM) Redmond, WA
E-Marketing Programs Specialist EMEA London, GBR
BUSINESS DEVELOPMENT DIRECTOR - E COMMERCE INTEGRATION San Jose, CA
MANAGER, E-SALES Plano, TX -
Oracle.jdbc.driver.T4CPreparedStatement causing out of memory exception
I am using oracle spatial 11.2.0.3 g.
I am getting out of memory exception on a process.
I analyzed the heap dump using OOMemory analyzer and figured out oracle.jdbc.driver.T4CPreparedStatement keeping 73% of the heap space.
Is oracle expanding the SPARQL queries in java side or keeping the results in cache.
How to solve it ?Hi,
We will need a re-producible test case (preferably small) to figure out why you are getting out of memory. You can send it to Oracle Support or email me at alan dot wu at oracle dot com.
Jena Adapter does not cache SPARQL query results on the Java side. The T4CPreparedStatement is not even in Jena Adapter's
code path or RDF's code path.
Thanks,
Zhe Wu -
Drive spindown causes problem with iTunes/Airport
Here's my setup:
Mac OS 10.5.8
Airport Extreme N Base Station
Airport Express N
Latest iTunes
USB external HD connected to AEBS via USB hub
Here's my problem:
I have the USB HD connected as a shared drive to the AEBS. The HD contains my iTunes folder and all of the music I have in the iTunes playlist. It appears that the HD spins down while not in constant use. So, while I am listening to iTunes via the Airport Express, the music cuts out, but iTunes shows that its still playing. I believe this cut out or pause in sound is caused by the spin down of the HD. When I stop the play button in Itunes, then hit play to start playing, the music comes back on.
This is probably confusing.
This is really annoying.
This problem doesn't happen when I'm listening to the radio.
Does anyone know what's happening?
Is it the spin down?
How do I prevent this?Seagate.
I downloaded a applescript "Keep Drive Spinning" for the downloads section.
I'll see if that helps. -
My external hard drives are causing problems when i capture DV in FCP
We have external hard drives (2 different brands lacie and WD) are causing dropped frames when I capture DV in FCP. This only happens when they are connected via firewire 800. When I connect them using USB everything works great. Any ideas why this could be? We have 2 of each drive and 2 older mac pros and they both have this issue with every combination of drives I try. I've also tried reseting the ports with no luck...
Connecting your camcorder to even 1 FW drive constitutes daisy-chaining. Even if you have two FW ports in your Mac, connecting a drive to one port and your camcorder to the other is the same as daisy-chaining as far as your Mac is concerned.
Try capuring from your camcorder with no exernal FW drives attached. Verify that works before trying anything else.
Also, I noticed your profile says you have a Mac Pro. You might consider adding a FW card in order to get extra FW ports that are not on the same FW bus as the built-in FW ports. Then you could connect your external FW drives to the card; and your camcorder to the built-in ports and it should work. -
Apple ID change causes problems
I recently changed my Apple ID and now when I try to manage my icloud account from my phone or iPad I just keep getting the "setup" page. How do I get this back to normal?
Hello Jeanette Ding,
Thank you for using Apple Support Communities.
For more information, take a look at:
Apple ID: What to do after you change your Apple ID
http://support.apple.com/kb/HT5796
Have a nice day,
Mario -
Problem using JDBC driver with JSP
Hi, I am trying to connecto to my mysql server via a JSP page, but it seems that there is a problem with the driver call or something in my configuration that unables me to connect. I have the mysql-connector-java-3.0.7-stable driver.
This is how my classpath looks like:
CLASSPATH=/home/hooper/Sources/mysql-connector-java-4.0.7-stable/lib:/home/hooper/Sources/mysql-connector-java-3.0.7-stable/com:/home/hooper/Sources/mysql-connector-java-3.0.7-stable/mysql-connector-java-3.0.7-stable-bin.jar:/usr/java/j2sdk1.4.1_02:.:/usr/java/j2sdk1.4.1_02/lib/tools.jar:/usr/java/j2sdk1.4.1_02
And this is my JSP page code:
<%@ page language="java" import= "java.sql.*"%>
<%
Connection con = null;
String userName = "hooper";
String password = ""; //No password
String url = "jdbc:mysql://localhost/test";
//Load the Driver class file
Class.forName("com.mysql.jdbc.Driver");
//Make a connection to the MySQL database
con = DriverManager.getConnection (url, userName, password);
out.println ("Database connection established");
if (con != null){
//Close the connection
con.close();
%>
And this is the error I get from Tomcat4.1.18:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: com.mysql.jdbc.Driver
root cause
javax.servlet.ServletException: com.mysql.jdbc.Driver
I hope someone can help me with this.
Thanks,
LuisHi..
Try using this way
String userName = "hooper";
String password = ""; //No password
String url = "jdbc:mysql://localhost:3306/test";
Class.forName("org.gjt.mm.mysql.Driver");
try to download the driver for mysql and add it to your classpath
Hope this works
Regd
Vasi -
We are currently using MS JDBC driver, which does not perform very well. can someone suggest some other JDBC drivers? and why it's better than MS JDBC driver.
Thanks.How do you know the JDBC driver is the problem? Have you profiled it?
What are you doing with the database?
Do your tables have proper indexes? Are the queries optimized? Have you run EXPLAIN PLAN on them?
Sure it's not network latency on your code? Could you be doing (n+1) queries by doing a SELECT and then iterating over the result instead of doing a JOIN?
You can try jTDS, but if your code is the problem it won't make any difference.
http://jtds.sourceforge.net/
% -
Problem with Java 5 and Oracle 10g JDBC driver
Hi All,
Currently we upgrade our web application to Java 5 and Oracle 10.2 JDBC driver. And we encountered a bug, when the user entered the information through UI and data didn't store into database (Oracle 9i). The problem is that this bug is not happend so often maybe once a day and this did not happen before we upgraded to Java 5 and Oracle 10.2 JDBC driver. Does anyone encounter the same problem ? Is this Java 5 problem or Oracle JDBC driver problem ?
Thanks,sounds like a database problem...
Are you using a driver version that's supported for your database engine?
What else did you change? We once ran into a major bug in our application that had for 5 years been masked by performance problems in our hardware and infrastructure.
Once those were resolved the bug showed itself and caused tens of thousands of records to be erroneously inserted into our database every day.
It's certainly NOT a problem with your JVM (if it's a decent one, like the Sun implementation).
So it's either your database, your driver, your network (dropping packets???), or your application.
The upgrade may just have exposed something that was already there. -
Oracle 8.1.5 JDBC driver problem with LONGVARCHAR
Hi, I'm having problem with 8.1.5 release on Solaris with the
JDBC type 4 driver (thin). If I create the following table
create table test1 (col1 NUMBER, col2 LONG);
Using JDBC driver to insert into the second column any string
longer than 4000 characters causing run time exception. The type2
driver works fine, but type2 is slow.
String sql = "insert into test1 (col1, col2) values (1099,?)";
PreparedStatement stmt ;
stmt = conn.prepareStatement(sql);
// create a string with very long value , bigger than 4096
stmt.setString(1,string);
stmt.executeUpdate();
runtime exception:
java.sql.SQLException: Data size bigger than max size for this
type
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at java.sql.SQLException.<init>(Compiled Code)
at oracle.jdbc.dbaccess.DBError.check_error(Compiled
Code)
at oracle.jdbc.ttc7.TTCItem.setArrayData(Compiled Code)
at
oracle.jdbc.driver.OraclePreparedStatement.setItem(Compiled Code)
at
oracle.jdbc.driver.OraclePreparedStatement.setString(Compiled
Code)
at testi.main(Compiled Code)
Any help is appreciated.
Thanks
Steve
nullPost the full stacktrace here
Also you might want to post jdbc related questions to weblogic.developer.
interest.jdbc
Kumar
DreamNEON wrote:
Hello,
the NSAPI integration works, also the JSP files.
But I have still problems with the Jdriver for my Oracle 8.1.5.
I get the message :
Failed to invoke startup class
weblogic.jdbc.common.internal.JdbcStartup=weblogic.jdbc.common.internal.JdbcStartup
when the WebLogic Server is started.
Any ideas or hints about that?
Thanks in advance
Armin -
Problem in Java Application Server 7 2004 Q2 + MS SQL 2000 + MS JDBC Driver
I have two applications runing on window 2000 server + Sun Java System Applilcation Server and connect to SQL Server 2000 + window 2000 server.
The JDBC driver is Microsoft JDBC type 4.
Both of them are with Local, Remote Ejb and session beans.
All of the ejbs have a unique jndi name. Each app has its only ejbs.
The problem I am facing is that If I deploy one of them, only one, every thing is fine.
However, If I deploy both of them , only one of them works.
I started the app server serval times. However, every time I got a different fail app.
For example, I got the following error message:
[24/Jan/2005:15:38:41] SEVERE ( 2440): Validation error in class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState: com.sun.jdo.api.persistence.model.util.ModelValidationException: Warning: Cannot find the table Student for the class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState.
Verify that the schema file exists and that its contents are correct.
[24/Jan/2005:15:38:42] INFO ( 2440): Bean Student method ejbFindActiveByPassword: problems running JDOQL query with params [21]
com.sun.jdo.api.persistence.support.JDOFatalInternalException: Failed to load the configuration for class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState.
NestedException: com.sun.jdo.api.persistence.support.JDOUserException: The mapping for class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState is invalid. Compile the class in the IDE, correct any errors, and verify that all required files are packaged for execution.
at com.sun.jdo.spi.persistence.support.sqlstore.SQLStoreManager.getPersistenceConfig(SQLStoreManager.java:145)
at com.sun.jdo.spi.persistence.support.sqlstore.impl.PersistenceManagerImpl.loadPersistenceConfig(PersistenceManagerImpl.java:2085)
at com.sun.jdo.spi.persistence.support.sqlstore.impl.PersistenceManagerImpl.getRetrieveDesc(PersistenceManagerImpl.java:1009)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.createRetrieveDesc(CodeGeneration.java:707)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.checkRetrieveDesc(CodeGeneration.java:4665)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.prepareRetrieveDescs(CodeGeneration.java:4360)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.query(CodeGeneration.java:850)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.JQLC.codeGen(JQLC.java:332)
at com.sun.jdo.spi.persistence.support.sqlstore.query.QueryImpl.doExecute(QueryImpl.java:626)
at com.sun.jdo.spi.persistence.support.sqlstore.query.QueryImpl.executeWithArray(QueryImpl.java:552)
at gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_ConcreteImpl.ejbFindActiveByPassword(StudentBean129315485_ConcreteImpl.java:3491)
at gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_ConcreteImpl_LocalHomeImpl.findActiveByPassword(StudentBean129315485_ConcreteImpl_LocalHomeImpl.java:137)
at gwumc.edu.ejb.smhs.visitingstudent.StudentDeanSessionBean.ejbCreate(StudentDeanSessionBean.java:24)
at gwumc.edu.ejb.smhs.visitingstudent.StudentDeanSessionBean_LocalHomeImpl.create(StudentDeanSessionBean_LocalHomeImpl.java:27)
at gwumc.edu.smhs.servlet.VisitingStudentDeanModel.<init>(VisitingStudentDeanModel.java:18)
at gwumc.edu.smhs.servlet.VisitingStudentDean.doPost(VisitingStudentDean.java:27)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:158)
at com.iplanet.ias.we
[24/Jan/2005:15:38:42] INFO ( 2440): b.WebContainer.service(WebContainer.java:850)
NestedStackTrace:
com.sun.jdo.api.persistence.support.JDOUserException: The mapping for class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState is invalid. Compile the class in the IDE, correct any errors, and verify that all required files are packaged for execution.
at com.sun.jdo.spi.persistence.support.sqlstore.SQLStoreManager.getPersistenceConfig(SQLStoreManager.java:128)
at com.sun.jdo.spi.persistence.support.sqlstore.impl.PersistenceManagerImpl.loadPersistenceConfig(PersistenceManagerImpl.java:2085)
at com.sun.jdo.spi.persistence.support.sqlstore.impl.PersistenceManagerImpl.getRetrieveDesc(PersistenceManagerImpl.java:1009)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.createRetrieveDesc(CodeGeneration.java:707)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.checkRetrieveDesc(CodeGeneration.java:4665)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.prepareRetrieveDescs(CodeGeneration.java:4360)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.CodeGeneration.query(CodeGeneration.java:850)
at com.sun.jdo.spi.persistence.support.sqlstore.query.jqlc.JQLC.codeGen(JQLC.java:332)
at com.sun.jdo.spi.persistence.support.sqlstore.query.QueryImpl.doExecute(QueryImpl.java:626)
at com.sun.jdo.spi.persistence.support.sqlstore.query.QueryImpl.executeWithArray(QueryImpl.java:552)
at gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_ConcreteImpl.ejbFindActiveByPassword(StudentBean129315485_ConcreteImpl.java:3491)
at gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_ConcreteImpl_LocalHomeImpl.findActiveByPassword(StudentBean129315485_ConcreteImpl_LocalHomeImpl.java:137)
at gwumc.edu.ejb.smhs.visitingstudent.StudentDeanSessionBean.ejbCreate(StudentDeanSessionBean.java:24)
at gwumc.edu.ejb.smhs.visitingstudent.StudentDeanSessionBean_LocalHomeImpl.create(StudentDeanSessionBean_LocalHomeImpl.java:27)
at gwumc.edu.smhs.servlet.VisitingStudentDeanModel.<init>(VisitingStudentDeanModel.java:18)
at gwumc.edu.smhs.servlet.VisitingStudentDean.doPost(VisitingStudentDean.java:27)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:158)
at com.iplanet.ias.web.WebContainer.service(WebContainer.java:850)
[24/Jan/2005:15:38:42] SEVERE ( 2440): StandardWrapperValve[visitingstudentdean]: Servlet.service() for servlet visitingstudentdean threw exception
javax.servlet.ServletException: nested exception is: com.sun.jdo.api.persistence.support.JDOFatalInternalException: Failed to load the configuration for class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState.
NestedException: com.sun.jdo.api.persistence.support.JDOUserException: The mapping for class gwumc.edu.ejb.smhs.visitingstudent.StudentBean129315485_JDOState is invalid. Compile the class in the IDE, correct any errors, and verify that all required files are packaged for execution.
at gwumc.edu.smhs.servlet.VisitingStudentDean.doPost(VisitingStudentDean.java:41)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:158)
at com.iplanet.ias.web.WebContainer.service(WebContainer.java:850)
Any suggestion is great.
Thanks,Hi again, Thanks for the reply!,
I understand the part that you mentionned about specifying the database name. That is not what is causing me a problem : I was reffering to an instance. A new feature of MS SQL server 2000 -> you can have multiple SQL server instances, which means that each will have its own set of databases. Kinda like having multiple virtual servers but on the same machine. With ODBC, you can connect to the DEFAULT instance by just specifying the server name only. When you try to connect to a non default instance in ODBC you must specify it like this : '\\server_name\instance_name.'. I have found no way to do this with the type 4 MS driver (writting it like this : '//server/instance' or any other way was unsuccessful). Does anyone know how to do this or if it can be done with the MS driver???
THX, Bye
Andre Carrier -
Problems when using absolute() on Oracle JDBC driver
Hi all,
I wrote some codes using JDBC to access a remote Oracle server. After got the resultset, I attempted to use absolute() method to move to a specific row index and got an error. Could anyone please help me to find out the cause and the solution?
Thanks in advanced,
** We have used driver package jdbc/lib/classes.zip in ORACLE 8.1.7
** The total of records in HEFKE000 table > 1000;
** The coding is following:
String url = null;
Connection conn = null;
ResultSet rs = null;
Statement stmt = null;
String query = "select * from HEFKE000";
String dbName = "HE_MI";
String hostName = "NTTD";
String userName = "HOKEN";
String passWord = "manager";
String dbDriver = "oracle.jdbc.driver.OracleDriver";
//Load the Driver
Class.forName(dbDriver);
//get connection
url = "jdbc:oracle:oci8:@NTTD";
//url = "jdbc:oracle:thin:@" + hostName + ":1521:" + dbName;
conn = DriverManager.getConnection (url, userName, passWord);
// It's faster when you don't commit automatically
conn.setAutoCommit (false);
// Create a Statement object so we can submit
// SQL statements to the driver
stmt = conn.createStatement();
// Submit a query, creating a ResultSet object
rs = stmt.executeQuery(query);
// Get the ResultSetMetaData. This will be used for the column headings
ResultSetMetaData rsmd = rs.getMetaData ();
// Get the number of columns in the result set
int numCols = rsmd.getColumnCount ();
int i;
if (rs.next() == rs.isFirst()) {
rs.absolute(100);
boolean more = rs.next ();
while (more) {
// Loop through each column, getting the
// column data and displaying
for (i=1; i<=numCols; i++) {
if (i > 1) {
System.out.print("|");
if (rs.getString(i) == null)
System.out.print("");
else
System.out.print(rs.getString(i));
output.println();
// Fetch the next result set row
more = rs.next ();
** The error:
Exception in thread "main" java.sql.SQLException: Invalid operation for forward
only resultset : absoluteThanks. However, after changed the codes as your suggestion and ran again, I got the following error:
Exception:
java.lang.OutOfMemoryError
<<no stack trace available>>
A note is that, the 'select * from HEFKE000' statement would get around 1,5 millions of records. So, the 'out of memory' above is for client side or for server side?
Thanks, -
Type 2 jdbc driver cause weblogic thread dump
we have weblogic 5.1(sp6) running on redhat linux 7.1
we install oracle client (8.1.7.0.0) and jdbc12(classes12.zip).
the connection pool use type 2 driver
oracle.jdbc.driver.OracleDriver
the jdk is 1.3.1 b24 (we have try -native -server -hotspot)
sometime weblogic crash , the error output is:
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0x51dc0310
Function name=kpufGetRcvInfo
Library=/usr/local/oracle/product/8.1.7/lib/libclntsh.so.8.0
Current Java thread:
at oracle.jdbc.oci8.OCIDBAccess.close_query(Native Method)
at oracle.jdbc.oci8.OCIDBAccess.closeQuery(OCIDBAccess.java:541)
at oracle.jdbc.driver.OracleResultSetImpl.internal_close(OracleResultSet
Impl.java:627)
at oracle.jdbc.driver.OracleResultSetImpl.close(OracleResultSetImpl.java
:118)
at weblogic.jdbcbase.pool.ResultSet.close(ResultSet.java:166)
at weblogic.jdbc20.rmi.internal.ResultSetImpl.close(ResultSetImpl.java:5
1)
at weblogic.jdbc20.rmi.SerialResultSet.close(SerialResultSet.java:54)
for some reason , we can't change to type 4 driver .
any advice is very thanksHi Owen,
You may have to get the latest patchset from oracle for your OCI client
libraries. You should talk to Oracle support about this problem as the core
dump is due to Oracle's driver.
sree
"Owen He" <[email protected]> wrote in message
news:3cf5940c$[email protected]..
>
we have weblogic 5.1(sp6) running on redhat linux 7.1
we install oracle client (8.1.7.0.0) and jdbc12(classes12.zip).
the connection pool use type 2 driver
oracle.jdbc.driver.OracleDriver
the jdk is 1.3.1 b24 (we have try -native -server -hotspot)
sometime weblogic crash , the error output is:
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0x51dc0310
Function name=kpufGetRcvInfo
Library=/usr/local/oracle/product/8.1.7/lib/libclntsh.so.8.0
Current Java thread:
at oracle.jdbc.oci8.OCIDBAccess.close_query(Native Method)
at oracle.jdbc.oci8.OCIDBAccess.closeQuery(OCIDBAccess.java:541)
atoracle.jdbc.driver.OracleResultSetImpl.internal_close(OracleResultSet
Impl.java:627)
atoracle.jdbc.driver.OracleResultSetImpl.close(OracleResultSetImpl.java
:118)
at weblogic.jdbcbase.pool.ResultSet.close(ResultSet.java:166)
atweblogic.jdbc20.rmi.internal.ResultSetImpl.close(ResultSetImpl.java:5
1)
atweblogic.jdbc20.rmi.SerialResultSet.close(SerialResultSet.java:54)
>
>
for some reason , we can't change to type 4 driver .
any advice is very thanks -
How to resolve "Failed to load TTSQLDB JDBC driver" problem
Hi,
I installed timesten112140.sparc64.tar on solaris m/c.
Details of solaris m/c are
SunOS pun-ldom-rds70 5.10 Generic_139555-08 sun4v sparc SUNW,T5240
I am getting below mentioned error when trying connecting to the database through java process.
ERROR: failed to load TTSQLDB JDBC driver.
java.sql.SQLException: Problems with loading native library/missing methods: /op
t/TimesTen/ttsolaris21/lib/libttJdbc.so: ld.so.1: java: fatal: /opt/TimesTen/tts
olaris21/lib/libttJdbc.so: wrong ELF class: ELFCLASS64 (Possible cause: architec
ture word width mismatch)
at com.timesten.jdbc.JdbcOdbcConnection.connect(JdbcOdbcConnection.java:
1753)
at com.timesten.jdbc.TimesTenDriver.connect(TimesTenDriver.java:349)
at com.timesten.jdbc.TimesTenDriver.connect(TimesTenDriver.java:205)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at CreateConnectionDemo.createConnection(CreateConnectionDemo.java:43)
at CreateConnectionDemo.<clinit>(CreateConnectionDemo.java:26)
Exception in thread "main" java.lang.NullPointerException
at CreateConnectionDemo.closeConnection(CreateConnectionDemo.java:69)
at CreateConnectionDemo.main(CreateConnectionDemo.java:62)You are trying to open a direct mode connection to 64-bit TimesTen from a JVM running in 32-bit mode. This is not possible. Run the JVM in 64-bit mode instead and thsi issue will be resolved.
Chris -
These resets appear to coincide with a clearing of the cached queries for the DSN from memory, breaking all my sub queries that try to use the initial cached one. I am grasping at straws to discover the reset culprit, the DSN tests always show OK, there is not packet loss at the switch level. If anyone has some suggestions, I am all ears!
The resets are completely random and under no load. My sql 2008 r2 box is set to unlimited connections.
An example of a DSN setup is :
Maintain Connections [x]
String Format [ ]
Max Pooled Statements 100
Timeout 20 Interval 7
Query Timeout 0
Login Timeout 30
CLOB [ ]
BLOB [ ]
Long Text Buffer 64000
Blob Buffer 64000
Validate Connection [ ]
I am running the following :
CF Enterprise 10,0,13,287689
Tomcat 7.0.23.0
Ubuntu 1204 x64
Java VM 20.4-b02
Java 1.6 (Sun Microsystems Inc)
I have seen it suggested to uncheck the maintain connections advanced options but this doesn't seem like a good approach to the problem and will cause more stress on the sql box IMHO.
I have also seen it suggested to enable Validate Connection but documentation on this is a bit sparse...
Here are more examples of the initial reset error and then the subsequent cache related errors :
Database Error Information:
Native Error Code: 0
SQL State: 08S01
Query Error: [Macromedia][SQLServer JDBC Driver]A problem occurred when attempting to contact the server (Server returned: Connection reset). Please ensure that the server parameters passed to the driver are correct and that the server is running. Also ensure that the maximum number of connections have not been exceeded for this server.
Custom Error Code: 08S01
Database Error Information:
Native Error Code: 0
SQL State: n/a
Query Error:
Query Of Queries runtime error.
Table named GlobalDetails was not found in memory. The name is misspelled or the table is not defined.
Custom Error Code: n/a
Thanks in advance to anyone who has a suggestion.Hi, could DBA check MS SQL Server connection logs???
May be server has some limits (for example sessions, memory and e.t.c.)
Maybe you are looking for
-
Apache Help! Computer has slowed to a crawl & no net access
After following tutorials: firstly here, and secondly here, my laptop has slowed to an excruciating crawl, when the machine boots it asks for my username and password when the Sys Prefs are set to auto log in. It also can't access the net anymore. It
-
Can't see actual print size.
Is there really not a way to get Aperture to show you the size of the print in the print dialog? Seems simple enough, but if you Choose Custom Image size and uncheck the silly Crop to Fill and Rotate to Fit defaults, then your picture is scaled to th
-
E4200 v2 - Dropping wireless connection
I purchased this router as an upgrade from my Cisco/Linksys E3000 that I have had for over a year. I use wireless almost exclusively in my household and when the E4200 V2 is working it is great but then it seems to slow down. Actually it is not slowi
-
Is there a risk of overcharging?
It say 4 hours to charge but my iPod charges in about 2. If I keep charging for the 4 hours is there a risk or overcharging and damaging the battery?
-
Need information regarding setAutoCommit(false) in oracle otd
Hi All, I need to insert data to two oracle tables. If data insertion to both tables are success then connection should commit else it should not commit. Hence for this i set 1) oracleOtd.setAutoCommit(false); The i inserted value to first table. Dur