Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 330714

Summary: The viewing session is not available or has expired or org.eclipse.birt.report.service.api.ReportServiceException
Product: z_Archived Reporter: Missing name <ihorowit>
Component: BIRTAssignee: Gang Liu <hustlg>
Status: VERIFIED WORKSFORME QA Contact: Xiaodan Wang <xwang>
Severity: normal    
Priority: P3 CC: bluesoldier, hustlg
Version: unspecified   
Target Milestone: 3.7.0   
Hardware: Other   
OS: other   
Whiteboard:

Description Missing name CLA 2010-11-19 16:28:38 EST
Build Identifier: ersion: Helios Service Release 1 Build id: 20100917-0705

We have load balanced iplanet/solaris webservers.  Our report comes up sometimes using a frameset and sometimes we one of the two errors in the summary about.  The error can happen when going to a single webserver

It usually comes up using /run Below is the stack trace when the error came up in /preview.

If I try to create a new page on a group, the report never comes up though it does sometimes when all the groups are on one page.  I read error https://bugs.eclipse...g.cgi?id=317661. as recommended by JasonW.  He told me to enter the bug.  


org.eclipse.birt.report.service.api.ReportServiceException: Error happened while running the report.
   at org.eclipse.birt.report.service.ReportEngineService.throwDummyException(ReportEngineService.java:1096)
   at org.eclipse.birt.report.service.ReportEngineService.runReport(ReportEngineService.java:1316)
   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.GeneratedMethodAccessor53.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   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.GeneratedMethodAccessor44.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   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:816)
   at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
   at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)
   at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
   at org.eclipse.birt.report.filter.ViewerFilter.doFilter(ViewerFilter.java:68)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
   at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
   at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
   at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
   at com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)
Caused by: org.eclipse.birt.report.engine.api.EngineException: Error happened while running the report.
   at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:282)
   at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:85)
   at org.eclipse.birt.report.service.ReportEngineService.runReport(ReportEngineService.java:1307)
... 46 more
Caused by: java.lang.NoClassDefFoundError: org/w3c/tidy/Tidy
   at org.eclipse.birt.report.engine.parser.HTMLTextParser.(HTMLTextParser.java:55)
   at org.eclipse.birt.report.engine.parser.TextParser.parse(TextParser.java:110)
   at org.eclipse.birt.report.engine.layout.pdf.util.HTML2Content.processForeignData(HTML2Content.java:437)
   at org.eclipse.birt.report.engine.layout.pdf.util.HTML2Content.html2Content(HTML2Content.java:418)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.startForeign(LayoutEngine.java:664)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterUtil.startContent(ContentEmitterUtil.java:77)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:628)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:636)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:636)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitContent(LayoutEngine.java:636)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.visitChildren(LayoutEngine.java:652)
   at org.eclipse.birt.report.engine.nLayout.RegionLayoutEngine.layout(RegionLayoutEngine.java:31)
   at org.eclipse.birt.report.engine.nLayout.area.impl.PageArea.layoutFooter(PageArea.java:486)
   at org.eclipse.birt.report.engine.nLayout.area.impl.PageArea.initialize(PageArea.java:249)
   at org.eclipse.birt.report.engine.nLayout.area.impl.RootArea.createNewPage(RootArea.java:143)
   at org.eclipse.birt.report.engine.nLayout.area.impl.RootArea.initialize(RootArea.java:134)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.setContainer(LayoutEngine.java:352)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine._startContainer(LayoutEngine.java:404)
   at org.eclipse.birt.report.engine.nLayout.LayoutEngine.startContainer(LayoutEngine.java:340)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterAdapter.startPage(ContentEmitterAdapter.java:65)
   at org.eclipse.birt.report.engine.emitter.ContentEmitterUtil.startContent(ContentEmitterUtil.java:47)
   at org.eclipse.birt.report.engine.layout.html.buffer.PageNode.start(PageNode.java:49)
   at org.eclipse.birt.report.engine.layout.html.buffer.ContainerBufferNode.start(ContainerBufferNode.java:79)
   at org.eclipse.birt.report.engine.layout.html.buffer.ContainerBufferNode.start(ContainerBufferNode.java:79)
   at org.eclipse.birt.report.engine.layout.html.buffer.ContainerBufferNode.start(ContainerBufferNode.java:79)
   at org.eclipse.birt.report.engine.layout.html.buffer.HTMLPageBuffer.startContent(HTMLPageBuffer.java:113)
   at org.eclipse.birt.report.engine.layout.html.buffer.TableBreakBuffer.startContent(TableBreakBuffer.java:287)
   at org.eclipse.birt.report.engine.layout.html.HTMLLeafItemLM.start(HTMLLeafItemLM.java:67)
   at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:139)
   at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)
   at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)
   at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)
   at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.resumeLayout(HTMLInlineStackingLM.java:111)
   at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.layoutNodes(HTMLInlineStackingLM.java:160)
   at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)
   at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)
   at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)
   at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)
   at org.eclipse.birt.report.engine.layout.html.HTMLTableLM.layoutChildren(HTMLTableLM.java:132)
   at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)
   at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)
   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:99)
   at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:249)
   at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:260)
... 48 more

Reproducible: Sometimes

Steps to Reproduce:
1.Run Report using frameset 
2.
3.
Comment 1 Gang Liu CLA 2010-12-10 04:54:22 EST
Could you please tell me on which version of BIRT you find this issue?
Comment 2 Missing name CLA 2010-12-10 11:16:02 EST
Viewer Version : 2.6.1
Engine Version: 2.6.1
JRE version: 1.6.0_17

Notes:
We created a sticky Virtual ip in our load balancer that always resolves to one server and that fixes the issue mainly.

We're running SunOS 5.10 and SunOne 6.
I don't know if you officially support that configuration.

The sticky ip is not ideal.  We'd prefer to use the load balancer properly.

There seems to be an old report document that doesn't get overwritten.  Are they stored anywhere decides the documents directory.  Could a shared tmp directory cause an issue?   Sometimes restarting web servers causes the one that had been working, to throw the error and the one that had been throwing errors to work properly.

The errors we get vary from the one above to 

"Stale NFS" 

This one below and others.  Thanks for your help.


java.lang.NoClassDefFoundError: Could not initialize class sun.print.CUPSPrinter
        at sun.print.UnixPrintServiceLookup.getDefaultPrintService(UnixPrintServiceLookup.java:503)
        at sun.print.UnixPrintServiceLookup.refreshServices(UnixPrintServiceLookup.java:186)
        at sun.print.UnixPrintServiceLookup.getPrintServices(UnixPrintServiceLookup.java:170)
        at sun.print.UnixPrintServiceLookup.getPrintServices(UnixPrintServiceLookup.java:358)
        at sun.print.UnixPrintServiceLookup.getPrintServices(UnixPrintServiceLookup.java:445)
        at javax.print.PrintServiceLookup.getServices(PrintServiceLookup.java:359)
        at javax.print.PrintServiceLookup.lookupPrintServices(PrintServiceLookup.java:105)
        at org.eclipse.birt.report.utility.PrintUtility.findPrinters(PrintUtility.java:248)
        at org.apache.jsp.webcontent.birt.pages.dialog.PrintReportServerDialogFragment_jsp._jspService(PrintReportServerDialogFragment_jsp.java:96)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:80)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:457)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:351)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
        at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:792)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:630)
        at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:548)
        at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
        at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
        at org.apache.jsp.webcontent.birt.pages.dialog.DialogContainerFragment_jsp._jspService(DialogContainerFragment_jsp.java:106)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:80)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:457)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:351)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
        at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:792)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:630)
        at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:548)
        at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
        at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
        at org.apache.jsp.webcontent.birt.pages.layout.SidebarFragment_jsp._jspService(SidebarFragment_jsp.java:76)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:80)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:457)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:351)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:917)
        at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:792)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude
Comment 3 Gang Liu CLA 2010-12-16 03:27:43 EST
If need create multiple Report Engine on the same machine, user should set an individual OSGi configuration folder for each Report Engine, also should copy the config.ini file to each configuration folder.
If all Report Engine share the same configuration folder, Class loading failure may occurs.

Sample Code:
EngineConfig config = new EngineConfig( );
....
HashMap osgiProperties = new HashMap();
osgiProperties .put("osgi.configuration.area", configFolder);
config.setOSGiConfig(map);
Platform.startup( config );
....



Could you please try this solution?
Comment 4 Gang Liu CLA 2011-01-11 02:53:48 EST
In this case, user should set an individual OSGi configuration folder for each Report Engine.
Comment 5 Missing name CLA 2011-01-11 11:00:55 EST
Thanks Gang,
We are working around by running on a single server. 
We never created multiple instances on the same machine.  We have a NFS file system that is shared by separate machines. We will look at this further if the load becomes too much for the single machine.
We don't use OSGI.  You can close this if you wish. Thanks for your help.
Comment 6 Xiaodan Wang CLA 2011-03-15 05:43:38 EDT
Set as Verified.