lokeshreport Posted May 23, 2009 Share Posted May 23, 2009 Hi all....Im generating a report, JRResultSetDataSource jrrsds= ResultSet object..Error Position---------> JasperRunManager.runReportToPdfStream(reportStream,servletOutputstream, parameter, jrrsds);at this position im getting following error....net.sf.jasperreports.engine.JRException: Unable to get next record. at net.sf.jasperreports.engine.JRResultSetDataSource.next(JRResultSetDataSource.java:99) at net.sf.jasperreports.engine.fill.JRFillDataset.advanceDataSource(JRFillDataset.java:842) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:760) at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1402) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:111) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:888) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:810) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:582) at net.sf.jasperreports.engine.JasperRunManager.runReportToPdfStream(JasperRunManager.java:368) at com.BabyHealthTrack.web.ReportGeneration.doGet(ReportGeneration.java:69) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595)Caused by: java.sql.SQLException: The result set is closed. at org.jboss.resource.adapter.jdbc.WrappedResultSet.checkState(WrappedResultSet.java:1939) at org.jboss.resource.adapter.jdbc.WrappedResultSet.next(WrappedResultSet.java:1181) at net.sf.jasperreports.engine.JRResultSetDataSource.next(JRResultSetDataSource.java:95) ... 31 more[/code]anybody give me sugestion....thanks in advance.... Code:Map<String, String> parameter = new HashMap<String, String>(); parameter.put("userName", bhtmlang.getNameDetails( (String) session.getAttribute("user")).getUsername()); ServletOutputStream servletOutputstream = response.getOutputStream(); InputStream reportStream = getServletConfig().getServletContext().getResourceAsStream("/reports/"+ getJrxmlTemplet(request.getParameter("jrxml"))); // InputStream reportStream=new FileInputStream(new // File("/reports/"+getJrxmlTemplet(request.getParameter("jrxml"))) ); try { // (String)session.getAttribute("user") JRResultSetDataSource jrrsds = getResultSet(request.getParameter("jrxml"), (String) session.getAttribute("user")); JasperRunManager.runReportToPdfStream(reportStream,servletOutputstream, parameter, jrrsds); response.setContentType("application/pdf"); servletOutputstream.flush(); servletOutputstream.close(); } catch (Exception e) { StringWriter stringwriter = new StringWriter(); PrintWriter printwriter = new PrintWriter(stringwriter); e.printStackTrace(printwriter); response.setContentType("text/plain"); response.getOutputStream().print(stringwriter.toString()); log.error("Reprot Generation Error", e); } } Link to comment Share on other sites More sharing options...
dnvsrikanth Posted May 23, 2009 Share Posted May 23, 2009 Hi lokeshreport, I think this is a database driver problem. I also got this error some times. Which driver do u use?? Need to figure out the problem. DNV Srikanth. Link to comment Share on other sites More sharing options...
lokeshreport Posted May 25, 2009 Author Share Posted May 25, 2009 Thanks for reply... Im using MySql database.... when i using jdbc-odbc connection it works fine... but not at JNDI connection(Connection pooling)... i got above error... Link to comment Share on other sites More sharing options...
dnvsrikanth Posted May 25, 2009 Share Posted May 25, 2009 Hi Lokesh, Its better to use jTDS driver. Chances of getting these problems will be less. I suggest you to use jTDS Driver. DNV Srikanth. 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