Community
Participate
Working Groups
When I try to open a jsdl file (in Eclipse 3.3M6) I get following exception: java.lang.NullPointerException at eu.geclipse.jsdl.adapters.jsdl.JobIdentificationTypeAdapter.load(JobIdentificationTypeAdapter.java:121) at eu.geclipse.ui.jsdl.editor.pages.JobDefinitionPage.createFormContent(JobDefinitionPage.java:146) at org.eclipse.ui.forms.editor.FormPage$1.run(FormPage.java:151) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.ui.forms.editor.FormPage.createPartControl(FormPage.java:149) at org.eclipse.ui.forms.editor.FormEditor.pageChange(FormEditor.java:484) at eu.geclipse.ui.editors.JsdlMultiPageEditor.pageChange(JsdlMultiPageEditor.java:791) at org.eclipse.ui.forms.editor.FormEditor.setActivePage(FormEditor.java:619) at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:287) at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:663) at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:422) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:592) at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:299) at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:179) at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:268) at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65) at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:394) at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1208) at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1161) at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1551) at org.eclipse.ui.internal.PartStack.add(PartStack.java:474) at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:106) at org.eclipse.ui.internal.PartStack.add(PartStack.java:460) at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:115) at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:65) at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:217) at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:207) at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:774) at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:673) at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:634) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2637) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2570) at org.eclipse.ui.internal.WorkbenchPage.access$12(WorkbenchPage.java:2562) at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2547) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2542) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2526) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2517) at org.eclipse.ui.ide.IDE.openEditor(IDE.java:644) at org.eclipse.ui.ide.IDE.openEditor(IDE.java:603) at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileAction.java:98) at org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystemEditorAction.java:98) at eu.geclipse.ui.internal.actions.OpenElementAction.run(OpenElementAction.java:87) at eu.geclipse.ui.internal.actions.OpenActions.delegateOpenEvent(OpenActions.java:100) at eu.geclipse.ui.views.GridModelViewPart.handleOpen(GridModelViewPart.java:375) at eu.geclipse.ui.views.GridModelViewPart$4.open(GridModelViewPart.java:431) at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:850) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:45) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:153) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1178) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263) at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1097) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3256) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2923) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2337) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2301) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2176) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:463) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:458) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:146) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:356) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:171) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952) It occurs in JobIdentificationTypeAdapter.java at line nr. 121: widgetName.setText(value.toString()); widgetName is null. The value of wigetName is fetched in line 118 by: widgetName = this.widgetFeaturesMap.get( featureID ); where featureID has the value 3.
I have tried another JSDL file now, I also get a NullPointerException, but at a different location: java.lang.NullPointerException at eu.geclipse.jsdl.adapters.jsdl.JobIdentificationTypeAdapter.getTypeForAdapter(JobIdentificationTypeAdapter.java:53) at eu.geclipse.jsdl.adapters.jsdl.JobIdentificationTypeAdapter.<init>(JobIdentificationTypeAdapter.java:46) at eu.geclipse.ui.jsdl.editor.pages.JobDefinitionPage.setPageContent(JobDefinitionPage.java:104) at eu.geclipse.ui.editors.JsdlMultiPageEditor.pushContentToPages(JsdlMultiPageEditor.java:191) at eu.geclipse.ui.editors.JsdlMultiPageEditor.addPages(JsdlMultiPageEditor.java:177) at org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:142) at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:283) at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:663) at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:422) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:592) at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:299) at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:179) at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:268) at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65) at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:394) at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1208) at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1161) at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1551) at org.eclipse.ui.internal.PartStack.add(PartStack.java:474) at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:106) at org.eclipse.ui.internal.PartStack.add(PartStack.java:460) at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:115) at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:65) at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:217) at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:207) at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:774) at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:673) at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:634) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2637) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2570) at org.eclipse.ui.internal.WorkbenchPage.access$12(WorkbenchPage.java:2562) at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2547) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2542) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2526) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2517) at org.eclipse.ui.ide.IDE.openEditor(IDE.java:644) at org.eclipse.ui.ide.IDE.openEditor(IDE.java:603) at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileAction.java:98) at org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystemEditorAction.java:98) at eu.geclipse.ui.internal.actions.OpenElementAction.run(OpenElementAction.java:87) at eu.geclipse.ui.internal.actions.OpenActions.delegateOpenEvent(OpenActions.java:100) at eu.geclipse.ui.views.GridModelViewPart.handleOpen(GridModelViewPart.java:375) at eu.geclipse.ui.views.GridModelViewPart$4.open(GridModelViewPart.java:431) at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:850) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:45) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:153) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1178) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263) at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1097) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3256) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2923) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2337) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2301) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2176) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:463) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:458) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:101) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:146) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:356) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:171) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952) I've also tried to create a new JSDL file using the wizard, the file created using the wizard worked. The two files I tried before might be incorrect but the editor should not crash even in that case.
Created attachment 65942 [details] one of the jsdl files that don't work
Created attachment 65943 [details] the other jsdl file that doesn't work
There seems to be a problem with the JobDefinitionAdapter. I will have a look on this and apply a patch.
Ok, each file was a good test case for the JSDL editor. The first file (jsdl_test.jsdl) contained the <jsdl:JobProject/> element which was not implemented in the JobIdentificationTypeAdapter, so this is the reason you received the first error. This is now implemented along with <jsdl:JobAnnotation/> element and thus resolves the errors you received. The patches that are attached, resolve these problems. Patches are for the "eu.geclipse.ui" and "eu.geclipse.jsdl.adapters" plugins. Now, the second file (newFile.jsdl) contained incorrect syntax for the JobDefinition element ( which is the root JSDL element).... You can observe this in the second line of the file.. where: <jsdl:job.....> should be <jsdl:JobDefinition....>. Also an end tag for this root element does not exist. To resolve this, i have opened a feature request (Bug: 185579) for the JSDL Editor that is an Error Discovery and Reporting Mechanism. I will implement this mechanism at a later stage (propably ready for 0.5.0 RC0)
Created attachment 66255 [details] Patch for eu.geclipse.ui This Patch solves the JobProject error that wasn't implemented in the JobIdentificationAdapterType.
Created attachment 66256 [details] patch for eu.geclipse.jsdl.adapters This Patch solves the JobProject error that wasn't implemented in the JobIdentificationAdapterType.
Please apply patches. Thanks.
I've applied the patches, the jsdl_test.jsdl file now works.
Change Resolution to Closed
Comment on attachment 66255 [details] Patch for eu.geclipse.ui Applied by Thomas
Comment on attachment 66256 [details] patch for eu.geclipse.jsdl.adapters Applied by Thomas