andysusanto Posted July 28, 2007 Share Posted July 28, 2007 hai, i get an error when try to create a report when database present 00:00:00, but if i change that value become 00:00:01 that report can be run perfect example CREATE TABLE `FOO` ( `ID` int(11) not null, `BEGINDATE` date PRIMARY KEY (`MASSAGETRANSDETAIL_ID`) ) insert into FOO values(1,'00:00:00') this an error message: net.sf.jasperreports.engine.JRRuntimeException: net.sf.jasperreports.engine.JRException: Unable to get value for field <field_database> of class 'java.sql.Time' net.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:625) net.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:343) net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:323) net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:282) net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:1348) net.sf.jasperreports.engine.fill.JRVerticalFiller.fillGroupHeader(JRVerticalFiller.java:566) net.sf.jasperreports.engine.fill.JRVerticalFiller.fillGroupHeaders(JRVerticalFiller.java:499) net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:230) net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:113) net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:763) net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:669) net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63) net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402) mainapp.locker.transaksi.print.PrintOut.InputField(PrintOut.java:164) mainapp.locker.transaksi.print.PrintOut.handleRequest(PrintOut.java:235) org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:45) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:820) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:755) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:396) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:350) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) TIA, andy susanto Link to comment Share on other sites More sharing options...
codyjasperForge Posted July 30, 2007 Share Posted July 30, 2007 Insert a clause into your query to handle 'NULL' values or, 00:00:00 time values... If your are using SQL you can use: NVL, DECODE, CASE, and other statements similar to these. Does this help? Link to comment Share on other sites More sharing options...
teodord Posted July 30, 2007 Share Posted July 30, 2007 Hi, You should tell us what database are we talking about and what JDBC driver do you use to connect to it. Thank you,Teodor Link to comment Share on other sites More sharing options...
andysusanto Posted August 1, 2007 Author Share Posted August 1, 2007 teodord, example : CREATE TABLE `FOO` ( `ID` int(11) not null, `BEGINDATE` time PRIMARY KEY (`ID`) ) insert into FOO values(1,'00:00:00') i am using :jasperreports-1.3.4.jarmysql-connector-java-5.0.5-bin.jarDatabase Mysql 5.0.37-community with MYISAM engine Link to comment Share on other sites More sharing options...
lucianc Posted August 1, 2007 Share Posted August 1, 2007 Could you post the full stacktrace (including the original exception) so that we can see what actually caused the exception? Regards,Lucian Link to comment Share on other sites More sharing options...
andysusanto Posted August 2, 2007 Author Share Posted August 2, 2007 CREATE TABLE `FOO` ( `ID` int(11) not null,`BEGINDATE` time,PRIMARY KEY (`ID`) ) insert into FOO values(1,'00:00:00') i am using :jasperreports-1.3.4.jarmysql-connector-java-5.0.5-bin.jarDatabase Mysql 5.0.37-community with MYISAM engine full stack error : net.sf.jasperreports.engine.JRException: Unable to get value for field 'LOCKERTRANS_TIMEOUT' of class 'java.sql.Time' at net.sf.jasperreports.engine.JRResultSetDataSource.getFieldValue(JRResultSetDataSource.java:314) at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:813) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:777) at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1106) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:111) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:763) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:669) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402) at mainapp.locker.transaksi.print.PrintOut.InputField(PrintOut.java:164) at mainapp.locker.transaksi.print.PrintOut.handleRequest(PrintOut.java:235) at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:45) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:820) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:755) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:396) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:350) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Unknown Source)Caused by: java.sql.SQLException: java.sql.SQLException: Value '00:00:00 can not be represented as java.sql.Time at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:910) at com.mysql.jdbc.ResultSet.getTimeFromBytes(ResultSet.java:6195) at com.mysql.jdbc.ResultSet.getTimeInternal(ResultSet.java:6227) at com.mysql.jdbc.ResultSet.getTime(ResultSet.java:5814) at org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.getTime(DelegatingResultSet.java:208) at net.sf.jasperreports.engine.JRResultSetDataSource.getFieldValue(JRResultSetDataSource.java:151) ... 31 more Link to comment Share on other sites More sharing options...
andysusanto Posted August 2, 2007 Author Share Posted August 2, 2007 Lucian, CREATE TABLE `FOO` ( `ID` int(11) not null,`BEGINDATE` time,PRIMARY KEY (`ID`) ) insert into FOO values(1,'00:00:00') i am using :jasperreports-1.3.4.jarmysql-connector-java-5.0.5-bin.jarDatabase Mysql 5.0.37-community with MYISAM engine full stack error : net.sf.jasperreports.engine.JRException: Unable to get value for field 'LOCKERTRANS_TIMEOUT' of class 'java.sql.Time' at net.sf.jasperreports.engine.JRResultSetDataSource.getFieldValue(JRResultSetDataSource.java:314) at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:813) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:777) at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1106) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:111) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:763) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:669) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402) at mainapp.locker.transaksi.print.PrintOut.InputField(PrintOut.java:164) at mainapp.locker.transaksi.print.PrintOut.handleRequest(PrintOut.java:235) at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:45) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:820) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:755) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:396) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:350) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Unknown Source)Caused by: java.sql.SQLException: java.sql.SQLException: Value '00:00:00 can not be represented as java.sql.Time at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:910) at com.mysql.jdbc.ResultSet.getTimeFromBytes(ResultSet.java:6195) at com.mysql.jdbc.ResultSet.getTimeInternal(ResultSet.java:6227) at com.mysql.jdbc.ResultSet.getTime(ResultSet.java:5814) at org.apache.tomcat.dbcp.dbcp.DelegatingResultSet.getTime(DelegatingResultSet.java:208) at net.sf.jasperreports.engine.JRResultSetDataSource.getFieldValue(JRResultSetDataSource.java:151) ... 31 more tia, Link to comment Share on other sites More sharing options...
andysusanto Posted August 2, 2007 Author Share Posted August 2, 2007 teodord,lucian , my problem solved when i upgrade mysql JDBC to 5.0.7. i think jasperreport need to add a note that jdbc mysql 5.0.5 forbidden to use. regrads, andy susanto Link to comment Share on other sites More sharing options...
lucianc Posted August 2, 2007 Share Posted August 2, 2007 andysusanto wrote:i think jasperreport need to add a note that jdbc mysql 5.0.5 forbidden to use. We don't certify specific JDBC drivers, JasperReports should work with any JDBC 2.0 driver. If a specific driver has a bug, the vendor should add a note so that people are aware of it. Anyway, this issue will remain logged on the forum so if anyone else will run into this issue it will find the solution here. Regards,Lucian Link to comment Share on other sites More sharing options...
sdnasir30 Posted December 11, 2012 Share Posted December 11, 2012 pls help me.i just downloaded version 5.0.0 and i need to present date field from mysql Db of type java.sql.Date.i have tried all the suggestions here but no result. but whenever i try i keep getting the error Compiling to file... C:UsersTrainning_02report1.jasper Compilation running time: 3,599! Filling report... Locale: English (United States) Time zone: Default Error filling print... Unable to get value for field 'trndate' of class 'java.sql.Date' net.sf.jasperreports.engine.JRException: Unable to get value for field 'trndate' of class 'java.sql.Date' at net.sf.jasperreports.engine.JRResultSetDataSource.getFieldValue(JRResultSetDataSource.java:319) at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:1330) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1231) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1207) at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1554) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:149) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:909) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:822) at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:61) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745) at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:891) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) Caused by: java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Date at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919) at com.mysql.jdbc.ResultSetRow.getDateFast(ResultSetRow.java:141) at com.mysql.jdbc.ByteArrayRow.getDateFast(ByteArrayRow.java:238) at com.mysql.jdbc.ResultSetImpl.getDate(ResultSetImpl.java:2210) at com.mysql.jdbc.ResultSetImpl.getDate(ResultSetImpl.java:2172) at net.sf.jasperreports.engine.JRResultSetDataSource.readDate(JRResultSetDataSource.java:330) at net.sf.jasperreports.engine.JRResultSetDataSource.getFieldValue(JRResultSetDataSource.java:152) ... 14 more Print not filled. Try to use an EmptyDataSource... Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now