Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
THRUST SERVICES & TOOLS
CLOUD EDITIONS
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Pdf Render Problem
mehrab
Hi all
I update my application from BIRT 2.1 to BIRT 2.3 and find a porblem when render a report in pdf. Previously it was working properly. My code and error is as follows. please anybody help me.
CODE:
public ByteArrayOutputStream getReport(File rptDocFile,
HttpServletRequest request) throws ViewerServletException {
IReportEngine engine = null;
IReportDocument iReportDocument = null;
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try {
engine = BirtEngine.getBirtEngine();
iReportDocument = engine.openReportDocument(rptDocFile.getAbsolutePath());
IRenderTask renderTask = engine.createRenderTask(iReportDocument);
PDFRenderContext renderContext = new PDFRenderContext( );
HashMap contextMap = new HashMap();
contextMap.put(EngineConstants.APPCONTEXT_PDF_RENDER_CONTEXT,renderContext);
renderTask.setAppContext(contextMap);
// Set Render Options
HTMLRenderOption renderOption = new HTMLRenderOption();
renderOption.setOutputStream(byteArrayOutputStream);
renderOption.setOutputFormat("pdf");
renderOption.setEmbeddable(true);
renderTask.setRenderOption(renderOption);
renderTask.render();
renderTask.close();
//closing the document file after finish the work
iReportDocument.close();
} catch (BirtException e) {
log.debug("PdfReportView:"+e);
throw new ViewerServletException(e.getMessage(),e);
}
return byteArrayOutputStream;
}
ERROR
java.lang.ClassCastException: java.util.ArrayList cannot be cast to org.eclipse.birt.report.engine.layout.area.impl.ContainerArea
at org.eclipse.birt.report.engine.layout.pdf.emitter.PDFLayoutEmitter.outputPage(PDFLayoutEmitter.java:379)
at org.eclipse.birt.report.engine.layout.pdf.emitter.WrappedPDFLayoutEmitter.outputPage(WrappedPDFLayoutEmitter.java:188)
at org.eclipse.birt.report.engine.layout.pdf.emitter.PageLayout.outputPage(PageLayout.java:373)
at org.eclipse.birt.report.engine.layout.pdf.emitter.PageLayout.closeLayout(PageLayout.java:332)
at org.eclipse.birt.report.engine.layout.pdf.emitter.ContainerLayout.closeFirstN(ContainerLayout.java:302)
at org.eclipse.birt.report.engine.layout.pdf.emitter.ContainerLayout.closeFirstN(ContainerLayout.java:307)
at org.eclipse.birt.report.engine.layout.pdf.emitter.ContainerLayout.closeFirstN(ContainerLayout.java:307)
at org.eclipse.birt.report.engine.layout.pdf.emitter.ContainerLayout.closeExcludingLast(ContainerLayout.java:295)
at org.eclipse.birt.report.engine.layout.pdf.emitter.RowLayout.closeLayout(RowLayout.java:91)
at org.eclipse.birt.report.engine.layout.pdf.emitter.PDFLayoutEmitter.endTableContainer(PDFLayoutEmitter.java:416)
at org.eclipse.birt.report.engine.layout.pdf.emitter.PDFLayoutEmitter.endRow(PDFLayoutEmitter.java:427)
at org.eclipse.birt.report.engine.layout.pdf.emitter.WrappedPDFLayoutEmitter.endRow(WrappedPDFLayoutEmitter.java:230)
at org.eclipse.birt.report.engine.layout.pdf.emitter.PDFLayoutEmitterProxy.endRow(PDFLayoutEmitterProxy.java:288)
at org.eclipse.birt.report.engine.emitter.CompositeContentEmitter.endRow(CompositeContentEmitter.java:176)
at org.eclipse.birt.report.engine.layout.html.HTMLTableLayoutEmitter.endRow(HTMLTableLayoutEmitter.java:636)
at org.eclipse.birt.report.engine.emitter.ContentEmitterUtil.endContent(ContentEmitterUtil.java:108)
at org.eclipse.birt.report.engine.layout.html.buffer.AbstractNode.end(AbstractNode.java:68)
at org.eclipse.birt.report.engine.layout.html.buffer.HTMLPageBuffer._endContainer(HTMLPageBuffer.java:154)
at org.eclipse.birt.report.engine.layout.html.buffer.HTMLPageBuffer.endContainer(HTMLPageBuffer.java:142)
at org.eclipse.birt.report.engine.layout.html.buffer.TableBreakBuffer.endContainer(TableBreakBuffer.java:285)
at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.end(HTMLStackingLM.java:43)
at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:134)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:68)
at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:27)
at org.eclipse.birt.report.engine.layout.html.HTMLTableBandLM.layoutChildren(HTMLTableBandLM.java:65)
at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:133)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:68)
at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:27)
at org.eclipse.birt.report.engine.layout.html.HTMLTableLM.layoutChildren(HTMLTableLM.java:76)
at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:133)
at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:68)
at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:90)
at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:101)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:151)
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:72)
at com.anabase.art.reportviewer.view.PdfReportView.getReport(PdfReportView.java:111)
at com.anabase.art.reportviewer.ViewerServlet.viewReport(ViewerServlet.java:199)
at com.anabase.art.reportviewer.ViewerServlet.execute(ViewerServlet.java:407)
at com.anabase.art.reportviewer.ViewerServlet.doPost(ViewerServlet.java:108)
at com.anabase.art.reportviewer.ViewerServlet.doGet(ViewerServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Find more posts tagged with
Comments
mwilliams
Hi mehrab,
Is that the entire error stack?
mehrab
Hi Michael
thanks for reply. yes that is the entire error stack. I am using BIRT with Spring Framework. So I add all BIRT plugins and libraries in following locations of my application. WEB-INF>platform>plugins, WEB-INF>platform>configuration and WEB-INF> lib.
Mehrab