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

Bug 299804

Summary: Report generation unable to load class
Product: z_Archived Reporter: Joel Cayne <jcayne>
Component: TPTPAssignee: Paul Slauenwhite <paulslau>
Status: CLOSED WORKSFORME QA Contact: Kathy Chan <kathy>
Severity: blocker    
Priority: P1 CC: jcayne, paulslau
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Joel Cayne CLA 2010-01-15 14:36:15 EST
When running reporting using the TPTP-4.7.0-201001141900 driver, an exception is thrown that a class cannot be loaded.

!SESSION 2010-01-15 15:24:19.033 -----------------------------------------------
eclipse.buildId=I20091210-1301
java.fullversion=J2RE 1.6.0 IBM J9 2.4 Windows XP x86-32 jvmwi3260sr5-20090519_35743 (JIT enabled, AOT enabled)
J9VM - 20090519_035743_lHdSMr
JIT  - r9_20090518_2017
GC   - 20090417_AA
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Command-line arguments:  -os win32 -ws win32 -arch x86 -clean -data D:\TPTP\470\eclipse\workspace

!ENTRY org.eclipse.hyades.test.ui 4 0 2010-01-15 15:29:29.447
!MESSAGE org.eclipse.core.runtime.CoreException: Plug-in org.eclipse.tptp.test.report.birt was unable to load class org.eclipse.tptp.test.report.birt.ui.internal.wizard.ReportXMLLogWizard.
!STACK 1
org.eclipse.core.runtime.CoreException: Plug-in org.eclipse.tptp.test.report.birt was unable to load class org.eclipse.tptp.test.report.birt.ui.internal.wizard.ReportXMLLogWizard.
	at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194)
	at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:178)
	at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:893)
	at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
	at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
	at org.eclipse.hyades.test.ui.internal.wizard.ReportWizard.getWizardElements(ReportWizard.java:94)
	at org.eclipse.hyades.test.ui.internal.wizard.ReportWizard.initPages(ReportWizard.java:78)
	at org.eclipse.hyades.ui.internal.wizard.HyadesWizard.init(HyadesWizard.java:81)
	at org.eclipse.hyades.test.ui.internal.navigator.handlers.CreateReportCommandHandler.execute(CreateReportCommandHandler.java:68)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
	at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
	at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
	at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
	at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:813)
	at org.eclipse.ui.menus.CommandContributionItem.access$19(CommandContributionItem.java:799)
	at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:789)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1050)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3931)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3524)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2407)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2371)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2220)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:367)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
	at java.lang.reflect.Method.invoke(Method.java:599)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:611)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:566)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1363)
Caused by: java.lang.NoClassDefFoundError: org.eclipse.hyades.ui.report.ReportGeneratorWizard
	at java.lang.ClassLoader.defineClassImpl(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:265)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:183)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:576)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:546)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:477)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:465)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:445)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:390)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:101)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:609)
	at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338)
	at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232)
	at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1193)
	at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:163)
	... 40 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.hyades.ui.report.ReportGeneratorWizard
	at java.lang.Throwable.<init>(Throwable.java:80)
	at java.lang.ClassNotFoundException.<init>(ClassNotFoundException.java:76)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:430)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:101)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:609)
	... 59 more
!SUBENTRY 1 org.eclipse.equinox.registry 4 1 2010-01-15 15:29:29.447
!MESSAGE Plug-in org.eclipse.tptp.test.report.birt was unable to load class org.eclipse.tptp.test.report.birt.ui.internal.wizard.ReportXMLLogWizard.
!STACK 0
java.lang.NoClassDefFoundError: org.eclipse.hyades.ui.report.ReportGeneratorWizard
	at java.lang.ClassLoader.defineClassImpl(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:265)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:183)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:576)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:546)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:477)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:465)
	at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:445)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
	at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:390)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
	at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:101)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:609)
	at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338)
	at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232)
	at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1193)
	at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:163)
	at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:893)
	at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
	at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
	at org.eclipse.hyades.test.ui.internal.wizard.ReportWizard.getWizardElements(ReportWizard.java:94)
	at org.eclipse.hyades.test.ui.internal.wizard.ReportWizard.initPages(ReportWizard.java:78)
	at org.eclipse.hyades.ui.internal.wizard.HyadesWizard.init(HyadesWizard.java:81)
	at org.eclipse.hyades.test.ui.internal.navigator.handlers.CreateReportCommandHandler.execute(CreateReportCommandHandler.java:68)
	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerPro
Comment 1 Paul Slauenwhite CLA 2010-01-18 08:40:49 EST
This error is caused by the <TPTP install path>\eclipse\dropins\eclipse\plugins\org.eclipse.tptp.test.report.birt_4.6.2.v200912231900\META-INF\MANIFEST.MF file not containing any dependacies (Require-Bundle attribute of the manifest).  It appears that they have been removed during the build/package process since the file (/org.eclipse.tptp.test.report.birt/META-INF/MANIFEST.MF) is correct in CVS (HEAD).

Also, the build ID of the the org.eclipse.tptp.test.report.birt plug-in in the BIRT Test Reports ZIP is from December (200912231900), when it was build in Jan (201001141900).
Comment 2 Paul Slauenwhite CLA 2010-01-18 09:23:14 EST
(In reply to comment #1)
> This error is caused by the <TPTP install
> path>\eclipse\dropins\eclipse\plugins\org.eclipse.tptp.test.report.birt_4.6.2.v200912231900\META-INF\MANIFEST.MF
> file not containing any dependacies (Require-Bundle attribute of the manifest).
>  It appears that they have been removed during the build/package process since
> the file (/org.eclipse.tptp.test.report.birt/META-INF/MANIFEST.MF) is correct
> in CVS (HEAD).
> 
> Also, the build ID of the the org.eclipse.tptp.test.report.birt plug-in in the
> BIRT Test Reports ZIP is from December (200912231900), when it was build in Jan
> (201001141900).

Appears to be resolved in the TPTP-4.7.0-201001161900 build.
Comment 3 Paul Slauenwhite CLA 2010-01-18 10:06:47 EST
This was the result of user error.  That is, unzipping the Test SDK AFTER the BIRT Test Reports, causing the Require-Bundle attribute to be removed from the manifest (from the empty org.eclipse.tptp.test.report.birt plug-in).  

Defect https://bugs.eclipse.org/bugs/show_bug.cgi?id=299938 will remove this potential problem for our users.
Comment 4 Joel Cayne CLA 2010-02-04 09:24:11 EST
Closing.