JasperReports中的例外情况

时间:2013-11-20 14:15:28

标签: java jasper-reports ireport

我正在使用iReport 3.0.0,我得到了这个例外。任何人都可以帮助我吗?

谢谢..

SEVERE: stack corruption. Is class net.sf.jasperreports.engine.fill.JRContinuationSubreportRunner instrumented for javaflow?
java.lang.IllegalStateException: stack corruption. Is class net.sf.jasperreports.engine.fill.JRContinuationSubreportRunner instrumented for javaflow?
    at org.apache.commons.javaflow.bytecode.StackRecorder.execute(StackRecorder.java:102)
    at org.apache.commons.javaflow.Continuation.continueWith(Continuation.java:170)
    at org.apache.commons.javaflow.Continuation.startWith(Continuation.java:129)
    at org.apache.commons.javaflow.Continuation.startWith(Continuation.java:102)
    at net.sf.jasperreports.engine.fill.JRContinuationSubreportRunner.start(JRContinuationSubreportRunner.java:57)
    at net.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:610)
    at net.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:344)
    at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:346)
    at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:305)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:1382)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:692)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:255)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:113)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:879)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:801)
    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.JasperRunManager.runReportToPdf(JasperRunManager.java:419)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.raporyeni.BeyannameGoruntule.runPDFReport(BeyannameGoruntule.java:169)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.raporyeni.BeyannameGoruntule.beyannameGoruntule(BeyannameGoruntule.java:71)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.web.DispatchServlet.beyannameGoruntule(DispatchServlet.java:601)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.web.DispatchServlet.goruntuleme(DispatchServlet.java:425)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.web.DispatchServlet.doRequestProcessing(DispatchServlet.java:275)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.web.DispatchServlet.doPost(DispatchServlet.java:527)
    at tr.gov.ggm.vedop2.ebyn.merkezislemleri.web.DispatchServlet.doGet(DispatchServlet.java:212)
    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:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at tr.gov.ggm.vedop2.eyeks.servlet.EyeksMainFilter.doFilter(EyeksMainFilter.java:163)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
    at java.lang.Thread.run(Thread.java:662)

1 个答案:

答案 0 :(得分:1)

Javaflow continuations subreport runner需要一个不同的JasperReport jar,名为jasperreports-javaflow-x.y.z.jar,它将Javaflow所需的字节码检测添加到JR类中。您必须手动将此jar添加到本地存储库。

下载jar的链接是http://sourceforge.net/projects/jasperreports/files/jasperreports/

请确保iReport版本,jasperReport jar版本和工作流程的jar版本相同,否则您将遇到不同的麻烦。

此错误基本上与应用服务器环境上子报告的线程相关。如果jar无法解决问题,则需要编辑属性文件以指向子报表运行程序的线程版本。

此链接非常有用:

http://jasonkratz.com/2008/07/29/running-jasperreports-with-subreports-in-an-app-server-environment/