Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: JDBC THIN driver10g query issue
Sorry. The column I was talking about has datatype NUMBER (38), not long and
not date.
***
***
Hello
It's true. I can see more useful information now :). Here below the beginning part of the stacktrace.
java.sql.SQLException: Numeric Overflow
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162)
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:227)
at oracle.jdbc.driver.NumberCommonAccessor.throwOverflow(NumberCommonAccessor.java:6797) at oracle.jdbc.driver.NumberCommonAccessor.getLong(NumberCommonAccessor.java:499) at oracle.jdbc.driver.OracleResultSetImpl.getLong(OracleResultSetImpl.java:521) at oracle.jdbc.driver.OracleResultSet.getLong(OracleResultSet.java:1617) at be.mips.cyberlab.util.ResultSetEx.getDate(ResultSetEx.java:117) at be.mips.cyberlab.business.Observation.findByPatient(Observation.java:690) It looks like it happens with a query where i select a field that containsa date. When fetching the records the error seems to occur with with the getLong method of the resultset object. To avoid confusion, this column I'm talking about has the NUMBER (38) datatype, not date. It contains a number(= milliseconds after January 1, 1970, 0:00:00 GMT). Those are rather big numbers (for example 1009797793000, 1009530557171, ...). What could possibly be wrong? I'll google some more in the meantime. Thanks in advance. Christ ophe> "Joe Weinstein" <joeNOSPAM_at_bea.com> wrote in messagenews:41EBF5A1.1000506_at_bea.com...>>>>>> Christophe Bonte wrote:>>>>> Hello>>>>>> Here's the stacktrace below. I don't really know where to look fore moreinformation though: Tomcat forums, Oracle forums? Information that I findabout 'numeric overflow' is very vague. I only have this when I use the THINdriver. Everything works just fine with OCI.>> ...>>> be.mips.cyberlab.exception.MipsDBSelectException: Observation.java :java.sql.SQLException Numeric Overflow>>> atbe.mips.cyberlab.business.Observation.findByPatient(Observation.java:743)>>>> Hi. The trouble is that the code in Observation.java is catching the>> original Numeric Overflow error and creating a SQLException to throw.>> Can you look at that code? Can you print out the full original stacktrace>> of the Numeric Overflow exception?>>>> Joe Weinstein at BEA>>>>> atbe.mips.cyberlab.web.resultconsultation.ObservationContainer.loadObservations(ObservationContainer.java:93)>>> atbe.mips.cyberlab.web.resultconsultation.Manager.executeCommand(Manager.java:213)>>> atbe.mips.cyberlab.web.FrontDoor.getHtmlForServlet(FrontDoor.java:115)>>> at be.mips.cyberlab.web.AServlet.doGet(AServlet.java:70)>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)>>> atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)>>> atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)>>> atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.catalina.c ore.StandardContextValve.invoke(StandardContextValve.java:191)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)>>> atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)>>> atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)>>> atorg.apache.catalina.core.StandardPipelin e$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:458)>>> atorg.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:551)>>> at java.lang.Thread.run(Thread.java:536)>>> be.mips.cyberlab.exception.MipsException:be.mips.cyberlab.web.resultconsultation.Manager :be.mips.cyberlab.exception.M>>> ipsDBSelectException Observation.java : java.sql.SQL Exception NumericOverflow>>> atbe.mips.cyberlab.web.resultconsultation.Manager.executeCommand(Manager.java:302)>>> atbe.mips.cyberlab.web.FrontDoor.getHtmlForServlet(FrontDoor.java:115)>>> at be.mips.cyberlab.web.AServlet.doGet(AServlet.java:70)>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)>>> atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)>>> atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)>>> atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995Received on Tue Jan 18 2005 - 08:01:31 CST
)>>> atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)>>> atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)>>> atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)>>> atorg.
apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)>>> atorg.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)>>> atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)>>> atorg.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)>>> atorg.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:458)>>> atorg.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:551)>>> at java.lang.Thread.run(Thread.java:536)>>>>