| Summary: | RAP BIRT WEBVIEWER INVOKE ERROR | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | Sudesh Bulathsinhala <sudeshb> |
| Component: | BIRT | Assignee: | Zhiqiang Qian <zqian> |
| Status: | VERIFIED FIXED | QA Contact: | Xiaoying Gu <bluesoldier> |
| Severity: | normal | ||
| Priority: | P3 | CC: | bluesoldier, zqian |
| Version: | unspecified | ||
| Target Milestone: | 3.7.0 M7 | ||
| Hardware: | PC | ||
| OS: | Windows 7 | ||
| Whiteboard: | Obsolete | ||
This is more a BIRT issue than RAP. Move it to BIRT. I think this was fixed, can you try the latest version? related post in BIRT forum: http://www.eclipse.org/forums/index.php?t=msg&th=200956&start=0 fixed. Verified in 3.7M7 |
Build Identifier: 20100917-0705 when trying to invoke BIRT report using web viewer in RAP, following error gets generated.. !ENTRY org.eclipse.rap.ui 4 0 2010-12-07 13:09:48.374 !MESSAGE Unhandled event loop exception !STACK 0 java.lang.NoClassDefFoundError: org/eclipse/birt/report/designer/ui/ReportPlugin at org.eclipse.birt.report.viewer.utilities.ViewerClassPathHelp er.getWorkspaceClassPath(ViewerClassPathHelper.java:191) at org.eclipse.birt.report.viewer.utilities.WebViewer.startWebA pp(WebViewer.java:756) at org.eclipse.birt.report.viewer.utilities.WebViewer.display(W ebViewer.java:1004) at org.eclipse.birt.report.viewer.utilities.WebViewer.display(W ebViewer.java:998) at com.argos.sys.base.controller.birt.provider.CustomBirtReport Provider.decorateReportInBrowser(CustomBirtReportProvider.ja va:42) at com.argos.sys.base.controller.widget.editor.CustomReportEdit orPart.invokeRunReport(CustomReportEditorPart.java:381) at com.argos.sys.base.controller.widget.editor.CustomReportEdit orPart.access$1(CustomReportEditorPart.java:367) at com.argos.sys.base.controller.widget.editor.CustomReportEdit orPart$5.handleEvent(CustomReportEditorPart.java:319) at org.eclipse.swt.internal.widgets.UntypedEventAdapter.dispatc hEvent(UntypedEventAdapter.java:651) at org.eclipse.swt.internal.widgets.UntypedEventAdapter.widgetS elected(UntypedEventAdapter.java:88) at org.eclipse.swt.events.SelectionEvent.dispatchToObserver(Sel ectionEvent.java:194) at org.eclipse.rwt.internal.events.Event.processEvent(Event.jav a:44) at org.eclipse.swt.events.TypedEvent.processEvent(TypedEvent.ja va:161) at org.eclipse.swt.events.TypedEvent.executeNext(TypedEvent.jav a:201) at org.eclipse.swt.widgets.Display.runPendingMessages(Display.j ava:1100) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :1090) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2390) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2351) at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:22 06) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:424) at org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:332) at org.eclipse.jface.internal.databinding.realmadapter.RealmAda pter.run(RealmAdapter.java:44) at org.eclipse.rap.ui.internal.RealmAdapterHook.runWithDefault( RealmAdapterHook.java:48) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:427) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:157) at com.argos.sys.client.entrypoint._rap.ClientEntryPoint.create UI(ClientEntryPoint.java:18) at org.eclipse.rwt.internal.lifecycle.EntryPointManager.createU I(EntryPointManager.java:92) at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWT LifeCycle.java:245) at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadCont roller.run(RWTLifeCycle.java:114) at java.lang.Thread.run(Unknown Source) at org.eclipse.rwt.internal.lifecycle.UIThread.run(UIThread.jav a:102) Caused by: java.lang.ClassNotFoundException: org.eclipse.birt.report.designer.ui.ReportPlugin at org.eclipse.osgi.internal.loader.BundleLoader.findClassInter nal(BundleLoader.java:513) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(Bund leLoader.java:429) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(Bund leLoader.java:417) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loa dClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(Unknown Source) ... 31 more This looks like a change that was introduced for designer classpath issues. In the WebViewer class there is a startWebApp method that adds urls to the cp based on the designer classpath: try { // if don't load debug ui, viewer will handle to set workspace // classpath String debugMode = System.getProperty( REPORT_DEBUT_MODE ); if ( debugMode == null ) { // get workspace classpath URL[] urls = ViewerClassPathHelper.getWorkspaceClassPath( reportFileName ); if ( reloadableClassLoader == null ) { // create ReloadableClassLoader reloadableClassLoader = new ReloadableClassLoader( urls, WebViewer.class.getClassLoader( ) ); } else { // reload class reloadableClassLoader.setUrls( urls ); reloadableClassLoader.reload( ); } } Jason Weathersby SUGGESTED ME A WORKAROUND AND IT'S WORKING. FIND BELOW NOTES PROVIDED BY HIM.. Can you try to set the debug mode to true? System.setProperty( WebViewer.REPORT_DEBUT_MODE,true ); before calling your viewer code? Also it would be good if you could log a bug for this. Jason Reproducible: Always Steps to Reproduce: 1. WebViewer on RAP [message #641634], under BIRT forum, you may find all the detail discussions and related. This happens when we try to invoke BIRT report in a webviewer component in RAP. 2. 3.