在Tomcat服务器中运行报表时出现BIRT引擎异常

时间:2013-02-06 05:08:31

标签: java eclipse birt

我有BIRT 4.2版本框架,当从tomcat服务器运行应用程序时我得到了"org.eclipse.birt.report.engine.api.EngineException: Error happened while running the report."  例外。但它通过RCP应用程序正常工作。在Tomcat的birt文件夹的根目录中复制.rptdesign文件,之后必须将jar文件复制到Tomcat webapps / birt / WEB-INF / lib /目录。 而且,Stacktrace是

org.eclipse.birt.report.engine.api.EngineException: Error happened while running the report.
   at org.eclipse.birt.report.engine.api.impl.EngineTask.handleFatalExceptions(EngineTask.java:2256)
   at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:270)
   at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:86)
   at org.eclipse.birt.report.service.ReportEngineService.runReport(ReportEngineService.java:1325)
   at org.eclipse.birt.report.service.BirtViewerReportService.runReport(BirtViewerReportService.java:158)
   at org.eclipse.birt.report.service.actionhandler.BirtRunReportActionHandler.__execute(BirtRunReportActionHandler.java:81)
   at org.eclipse.birt.report.service.actionhandler.BirtGetPageActionHandler.__checkDocumentExists(BirtGetPageActionHandler.java:58)
   at org.eclipse.birt.report.service.actionhandler.AbstractGetPageActionHandler.prepareParameters(AbstractGetPageActionHandler.java:119)
   at org.eclipse.birt.report.service.actionhandler.AbstractGetPageActionHandler.__execute(AbstractGetPageActionHandler.java:104)
   at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(AbstractBaseActionHandler.java:90)
   at org.eclipse.birt.report.soapengine.processor.AbstractBaseDocumentProcessor.__executeAction(AbstractBaseDocumentProcessor.java:47)
   at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.executeAction(AbstractBaseComponentProcessor.java:143)
   at org.eclipse.birt.report.soapengine.processor.BirtDocumentProcessor.handleGetPage(BirtDocumentProcessor.java:87)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.process(AbstractBaseComponentProcessor.java:112)
   at org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingImpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
   at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
   at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
   at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
   at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
   at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
   at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
   at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
   at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
   at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doPost(BirtSoapMessageDispatcherServlet.java:265)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
   at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
   at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.eclipse.birt.report.filter.ViewerFilter.doFilter(ViewerFilter.java:68)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:395)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:250)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
   at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.OutOfMemoryError: Java heap space
   at java.lang.StringCoding$StringDecoder.decode(Unknown Source)
   at java.lang.StringCoding.decode(Unknown Source)
   at java.lang.String.(Unknown Source)
   at java.util.jar.Attributes.read(Unknown Source)
   at java.util.jar.Manifest.read(Unknown Source)
   at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)
   at sun.security.util.SignatureFileVerifier.process(Unknown Source)
   at java.util.jar.JarVerifier.processEntry(Unknown Source)
   at java.util.jar.JarVerifier.update(Unknown Source)
   at java.util.jar.JarFile.initializeVerifier(Unknown Source)
   at java.util.jar.JarFile.getInputStream(Unknown Source)
   at sun.net.www.protocol.jar.JarURLConnection.getInputStream(Unknown Source)
   at java.net.URL.openStream(Unknown Source)
   at org.eclipse.birt.report.engine.layout.pdf.font.FontConfigReader.parseConfig(FontConfigReader.java:35)
   at org.eclipse.birt.report.engine.layout.pdf.font.FontMappingManagerFactory.loadFontMappingConfig(FontMappingManagerFactory.java:419)
   at org.eclipse.birt.report.engine.layout.pdf.font.FontMappingManagerFactory.loadFontMappingConfig(FontMappingManagerFactory.java:378)
   at org.eclipse.birt.report.engine.layout.pdf.font.FontMappingManagerFactory.createFontMappingManager(FontMappingManagerFactory.java:294)
   at org.eclipse.birt.report.engine.layout.pdf.font.FontMappingManagerFactory.getFontMappingManager(FontMappingManagerFactory.java:171)
   at org.eclipse.birt.report.engine.nLayout.LayoutContext.getFontManager(LayoutContext.java:356)
   at org.eclipse.birt.report.engine.nLayout.area.impl.TextAreaLayout.(TextAreaLayout.java:76)
   at org.eclipse.birt.report.engine.nLayout.area.impl.InlineTextArea.layout(InlineTextArea.java:59)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.startContent(LayoutEngine.java:538)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterAdapter.startText(ContentEmitterAdapter.java:147)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterAdapter.startLabel(ContentEmitterAdapter.java:153)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterUtil.startContent(ContentEmitterUtil.java:65)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:693)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:701)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.startForeign(LayoutEngine.java:736)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterUtil.startContent(ContentEmitterUtil.java:77)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:693)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitChildren(LayoutEngine.java:717)
   at org.eclipse.birt.report.engine.nLayout.RegionLayoutEngine.layout(RegionLayoutEngine.java:31)

1 个答案:

答案 0 :(得分:1)

这似乎是根本原因:

Caused by: java.lang.OutOfMemoryError: Java heap space

考虑配置Tomcat JVM以增加堆大小。