Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
Database Servers
DB2InformixIngresMS SQLOraclePervasive.SQLPostgreSQLProgressSybase
Desktop Databases
FileMakerFoxProMS AccessParadox
General
General DB TopicsDatabase Theory
Related Topics
Java Development.NET DevelopmentVB DevelopmentMore Topics ...

Database Forum / DB2 Topics / June 2004

Tip: Looking for answers? Try searching our database.

Cryptic JDBC exception

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Tom Davies - 29 Jun 2004 04:47 GMT
Can anyone tell me how to find out what causes this error -- the
message is not very revealing!

I'm using DB2 8.1 fixpak 5 on Windows XP, using the Sun JDK 1.4.2.

Thanks,
 Tom

com.ibm.db2.jcc.b.SQLException: 5
    at com.ibm.db2.jcc.b.ce.e(ce.java:1093)
    at com.ibm.db2.jcc.b.ce.a(ce.java:884)
    at com.ibm.db2.jcc.a.bd.n(bd.java:535)
    at com.ibm.db2.jcc.a.bd.i(bd.java:228)
    at com.ibm.db2.jcc.a.bd.c(bd.java:54)
    at com.ibm.db2.jcc.a.r.c(r.java:53)
    at com.ibm.db2.jcc.a.bp.h(bp.java:156)
    at com.ibm.db2.jcc.b.ce.j(ce.java:880)
    at com.ibm.db2.jcc.b.cf.a(cf.java:1516)
    at com.ibm.db2.jcc.b.cf.executeQuery(cf.java:303)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:177)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:177)
    at org.apache.ojb.broker.accesslayer.JdbcAccess.executeQuery(JdbcAccess.java:256)
    at org.apache.ojb.broker.accesslayer.RsIterator.(RsIterator.java:245)
    at org.apache.ojb.broker.accesslayer.ReportQueryRsIterator.(ReportQueryRsIterator.java:84)
    at org.apache.ojb.broker.singlevm.ReportRsIteratorFactoryImpl.createRsIterator(ReportRsIteratorFactoryImpl.java:96)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsIteratorFromQuery(PersistenceBrokerImpl.java:2491)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsIteratorFromQueryExtentAware(PersistenceBrokerImpl.java:1707)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getReportQueryIteratorFromQuery(PersistenceBrokerImpl.java:2548)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getReportQueryIteratorByQuery(PersistenceBrokerImpl.java:2467)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCount(PersistenceBrokerImpl.java:2438)
    at org.apache.ojb.broker.accesslayer.RsIterator.countedSize(RsIterator.java:474)
    at org.apache.ojb.broker.accesslayer.RsIterator.size(RsIterator.java:501)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1221)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1372)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1398)
    at org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1385)
    at org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:306)
    at au.com.ids.service.persistence.ServiceDAO.findOrdersByStatusAndPlannedInDate(ServiceDAO.java:114)
    at au.com.ids.service.businesslogic.BookingConfirmationController.findRepairBookingsByDate(BookingConfirmationController.java:240)
    at au.com.ids.service.businesslogic.BookingConfirmationController.retrieveBookingConfirmationLines(BookingConfirmationController.java:307)
    at au.com.ids.service.businesslogic.BookingConfirmationController.doInitForm(BookingConfirmationController.java:187)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at au.com.ids.base.businesslogic.BaseController.invokeMethod(BaseController.java:238)
    at au.com.ids.base.businesslogic.BaseController.callInitMethod(BaseController.java:45)
    at au.com.ids.base.action.CallInitControllerAction.perform(CallInitControllerAction.java:60)
    at au.com.ids.base.action.BaseAction.perform(BaseAction.java:149)
    at au.com.ids.base.action.BaseAction.execute(BaseAction.java:126)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
    at au.com.ids.base.businesslogic.ResponseOverridingFilter.doFilter(ResponseOverridingFilter.java:61)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
    at au.com.ids.base.businesslogic.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:147)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
    at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
    at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
    at java.lang.Thread.run(Thread.java:534)
Rhino - 29 Jun 2004 13:47 GMT
> Can anyone tell me how to find out what causes this error -- the
> message is not very revealing!
[quoted text clipped - 16 lines]
> at com.ibm.db2.jcc.b.cf.executeQuery(cf.java:303)
> at
org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingP
reparedStatement.java:177)
> at
org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingP
reparedStatement.java:177)
> at
org.apache.ojb.broker.accesslayer.JdbcAccess.executeQuery(JdbcAccess.java:25
6)
> at org.apache.ojb.broker.accesslayer.RsIterator.(RsIterator.java:245)
> at
org.apache.ojb.broker.accesslayer.ReportQueryRsIterator.(ReportQueryRsIterat
or.java:84)
> at
org.apache.ojb.broker.singlevm.ReportRsIteratorFactoryImpl.createRsIterator(
ReportRsIteratorFactoryImpl.java:96)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsIteratorFromQuery(
PersistenceBrokerImpl.java:2491)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getRsIteratorFromQueryE
xtentAware(PersistenceBrokerImpl.java:1707)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getReportQueryIteratorF
romQuery(PersistenceBrokerImpl.java:2548)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getReportQueryIteratorB
yQuery(PersistenceBrokerImpl.java:2467)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCount(PersistenceBro
kerImpl.java:2438)
> at
org.apache.ojb.broker.accesslayer.RsIterator.countedSize(RsIterator.java:474
)
> at org.apache.ojb.broker.accesslayer.RsIterator.size(RsIterator.java:501)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Pe
rsistenceBrokerImpl.java:1221)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Pe
rsistenceBrokerImpl.java:1372)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Pe
rsistenceBrokerImpl.java:1398)
> at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getCollectionByQuery(Pe
rsistenceBrokerImpl.java:1385)
> at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.getCollectionByQu
ery(DelegatingPersistenceBroker.java:306)
> at
au.com.ids.service.persistence.ServiceDAO.findOrdersByStatusAndPlannedInDate
(ServiceDAO.java:114)
> at
au.com.ids.service.businesslogic.BookingConfirmationController.findRepairBoo
kingsByDate(BookingConfirmationController.java:240)
> at
au.com.ids.service.businesslogic.BookingConfirmationController.retrieveBooki
ngConfirmationLines(BookingConfirmationController.java:307)
> at
au.com.ids.service.businesslogic.BookingConfirmationController.doInitForm(Bo
okingConfirmationController.java:187)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
> at java.lang.reflect.Method.invoke(Method.java:324)
> at
au.com.ids.base.businesslogic.BaseController.invokeMethod(BaseController.jav
a:238)
> at
au.com.ids.base.businesslogic.BaseController.callInitMethod(BaseController.j
ava:45)
> at
au.com.ids.base.action.CallInitControllerAction.perform(CallInitControllerAc
tion.java:60)
> at au.com.ids.base.action.BaseAction.perform(BaseAction.java:149)
> at au.com.ids.base.action.BaseAction.execute(BaseAction.java:126)
> at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProces
sor.java:484)
> at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
> at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
> at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
> at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
> at
au.com.ids.base.businesslogic.ResponseOverridingFilter.doFilter(ResponseOver
ridingFilter.java:61)
> at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:213)
> at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
> at
au.com.ids.base.businesslogic.SetCharacterEncodingFilter.doFilter(SetCharact
erEncodingFilter.java:147)
> at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:213)
> at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
> at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:256)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
> at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:191)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
> at
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:2
46)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
> at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
> at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
> at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:171)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
> at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
> at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
> at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:174)
> at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
> at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
> at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
> at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:392)
> at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
> at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:619)
> at java.lang.Thread.run(Thread.java:534)

It's hard to answer this question - or even guess - without more
information. What sort of program is it? A stored procedure? UDF? What is
the program trying to do? (I realize that may be difficult to answer
precisely since none of the stacktrace methods looks as if it is in the
application itself.) Has the program ever worked or is this the first time
you ran it? If it used to work but is now broken, what has changed in your
environment since you last ran it successfully?

I see a lot of Tomcat and Struts methods in the stacktrace. Is this a
servlet or JSP?

Rhino
Tom Davies - 30 Jun 2004 07:54 GMT
> > Can anyone tell me how to find out what causes this error -- the
> > message is not very revealing!
[snip]
> It's hard to answer this question - or even guess - without more
> information. What sort of program is it? A stored procedure? UDF? What is
[quoted text clipped - 6 lines]
> I see a lot of Tomcat and Struts methods in the stacktrace. Is this a
> servlet or JSP?

Thanks for even looking at it! It is a servlet.

Further experimentation shows that under Linux I get the full error
message, but under windows I don't.

The actual error is:

Caused by: com.ibm.db2.jcc.b.SQLException: The value of input host
variable or parameter number "5" cannot be used because of its data
type.

The statement being executed is a prepared statement, and parameter 5
is of type java.sql.Date. It is used in the where clause of the
statement thus:

... DATE(in_date) = ? ...

in_date is a timestamp column.

The interesting thing is that the statement is fine with the older
db2java.zip JDBC driver (COM.ibm.db2.jdbc.app.DB2Driver), but using
the jcc driver (com.ibm.db2.jcc.DB2Driver) the error occurs.

Tom
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.