| Summary: | NPE in MasterDetailsContentNode.isChildNodeFactoryProperty | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | z_Archived | Reporter: | Kamesh Sampath <kamesh.sampath> | ||||||||||
| Component: | Sapphire | Assignee: | Konstantin Komissarchik <konstantin> | ||||||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||||||
| Severity: | normal | ||||||||||||
| Priority: | P3 | CC: | gregory.amerson, konstantin, shenxue.zhou | ||||||||||
| Version: | unspecified | ||||||||||||
| Target Milestone: | --- | ||||||||||||
| Hardware: | All | ||||||||||||
| OS: | All | ||||||||||||
| Whiteboard: | |||||||||||||
| Attachments: |
|
||||||||||||
|
Description
Kamesh Sampath
Created attachment 203345 [details]
Stack Trace for the Bug
The stack trace to debug the application or fix the bug
I am not seeing this problem in any of the samples. From the stack trace, I have an idea as to what the problem might be, but I am not all that comfortable trying to fix it without a repro. Would you be able to attach a repro project? Created attachment 203380 [details]
Repro Project
Attaching the Repro project execution of which I am getting the error.
From my knowledge i see the following possibilities,
1. My improper modeling
2. Linux with Juno42
~Kamesh
I was not able to reproduce the attached stack trace. I imported the project, launched the workspace and created abc.shape file. That immediately generated numerous regarding .shape being an unknown content type and editor didn't open. The stack trace that I did get showed that XML editor was confused and didn't accept it as an XML content type. I then modified the editor extension in plugin.xml to specify filenames attributes as "shapes.xml" instead of using .shape extension. I was able to open the editor at that point and didn't see any issues. Two observations: 1. You need to fix .shape content type specification. See how this is done in the SDK plugin for .sdef files. 2. The attached exception must not occur when starting with an empty shapes file. Perhaps it takes a certain file to trigger it. If so, please attach this file. (In reply to comment #4) > I was not able to reproduce the attached stack trace. I imported the project, > launched the workspace and created abc.shape file. That immediately generated > numerous regarding .shape being an unknown content type and editor didn't open. > The stack trace that I did get showed that XML editor was confused and didn't > accept it as an XML content type. I then modified the editor extension in > plugin.xml to specify filenames attributes as "shapes.xml" instead of using > .shape extension. I was able to open the editor at that point and didn't see > any issues. > > Two observations: > > 1. You need to fix .shape content type specification. See how this is done in > the SDK plugin for .sdef files. > > 2. The attached exception must not occur when starting with an empty shapes > file. Perhaps it takes a certain file to trigger it. If so, please attach this > file. I am getting the same error for the another editor that I was developing with 0.3.x (latest build). I have again attached the error trace (with_r_0_3_x) for you. I have not been getting this error until i took the latest update. Not sure what was the cause Created attachment 203552 [details]
Error Trace with R_0_3_x
Could you attach the file you are getting this error with? I have not been able to reproduce this problem. Created attachment 203553 [details]
File that is causing the error
This is the sample file that is causing the error, I am not sure how i can share the complete project (for debugging if needed) as it has some other dependencies and whole lot of setup :@
Hope this helps. Also my testing or developing on Windows 7 x86_64 with Indigo platform on jdk 1.6.0_27(64-bit)
*** Bug 358316 has been marked as a duplicate of this bug. *** I have not be able to reproduce this one, but I took a stab at a fix. Please re-open if you are still seeing this problem, otherwise please mark as verified. Fixed in 0.3.1 and 0.4 streams. Previous to build 527 I was able to reproduce the NPE each time. Now, after installing build 527 I no longer see any NPEs loading the exact same file. I believe this one has been fixed. However, I'll let Kamesh test it as well and if he sees it it fixed, perhaps he should be the one to mark this bug verified. (In reply to comment #11) > Previous to build 527 I was able to reproduce the NPE each time. Now, after > installing build 527 I no longer see any NPEs loading the exact same file. I > believe this one has been fixed. However, I'll let Kamesh test it as well and > if he sees it it fixed, perhaps he should be the one to mark this bug verified. I too don't see that error anymore with R_0_3_x. Let me check 0.4.x, but when I updated my source i see its updated to juno-38 as recommended, are we going to use juno-38 for R_0_4x ?or juno-42 ? I will mark it as verified. If i see in other Sapphire branches i will reopen it. ~Kamesh Closing. Thanks.
> Let me check 0.4.x, but when I updated my source i see its updated to juno-38
> as recommended, are we going to use juno-38 for R_0_4x ?or juno-42 ?
We are having temporary issues getting a working 4.2 build, so I've reverted to using juno-38 instead. I expect that we will be able to go back to juno-42 in about a week or so when M2 is ready.
Seeing a somewhat different variant of the same problem. Looks like this isn't fully fixed yet... java.lang.NullPointerException at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsContentNode.isChildNodeFactoryProperty(MasterDetailsContentNode.java:636) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsContentNode.handleModelElementChange(MasterDetailsContentNode.java:762) at org.eclipse.sapphire.ui.SapphirePart$1.propertyChanged(SapphirePart.java:105) at org.eclipse.sapphire.modeling.ModelElement.notifyPropertyChangeListeners(ModelElement.java:1280) at org.eclipse.sapphire.modeling.ModelElement.notifyPropertyChangeListeners(ModelElement.java:1256) at org.eclipse.sapphire.modeling.ModelElementList.refresh(ModelElementList.java:186) at org.eclipse.sapphire.modeling.ModelElementList.init(ModelElementList.java:63) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.WeblogicDeploymentPlan.refreshProperty(WeblogicDeploymentPlan.java:353) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:457) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:450) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.WeblogicDeploymentPlan.getModuleOverride(WeblogicDeploymentPlan.java:163) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.VariableAssignedPropertyCustomBinding.read(VariableAssignedPropertyCustomBinding.java:25) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.Variable.refreshProperty(Variable.java:208) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:457) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:450) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.Variable.getAssigned(Variable.java:44) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.Variable.read(Variable.java:346) at org.eclipse.sapphire.modeling.ModelElement.read(ModelElement.java:233) at org.eclipse.sapphire.modeling.ModelElement.refreshValidationResult(ModelElement.java:880) at org.eclipse.sapphire.modeling.ModelElement.validate(ModelElement.java:862) at org.eclipse.sapphire.modeling.ModelElementList.refreshValidationResult(ModelElementList.java:212) at org.eclipse.sapphire.modeling.ModelElementList.refresh(ModelElementList.java:189) at org.eclipse.sapphire.modeling.ModelElementList.init(ModelElementList.java:63) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.VariableDefinition.refreshProperty(VariableDefinition.java:132) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:457) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:450) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.VariableDefinition.getVariables(VariableDefinition.java:84) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.VariableDefinition.read(VariableDefinition.java:160) at org.eclipse.sapphire.modeling.ModelElement.read(ModelElement.java:254) at org.eclipse.sapphire.modeling.ModelElement.refreshValidationResult(ModelElement.java:884) at org.eclipse.sapphire.modeling.ModelElement.validate(ModelElement.java:862) at org.eclipse.sapphire.modeling.ModelElementHandle.refreshValidationState(ModelElementHandle.java:285) at org.eclipse.sapphire.modeling.ModelElementHandle.refreshInternal(ModelElementHandle.java:249) at org.eclipse.sapphire.modeling.ModelElementHandle.init(ModelElementHandle.java:50) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.WeblogicDeploymentPlan.refreshProperty(WeblogicDeploymentPlan.java:402) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:457) at org.eclipse.sapphire.modeling.ModelElement.refresh(ModelElement.java:450) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.WeblogicDeploymentPlan.getVariableDefinition(WeblogicDeploymentPlan.java:216) at oracle.eclipse.tools.weblogic.descriptors.deploy.internal.WeblogicDeploymentPlan.read(WeblogicDeploymentPlan.java:473) at org.eclipse.sapphire.modeling.ModelElement.read(ModelElement.java:247) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsContentNode.init(MasterDetailsContentNode.java:124) at org.eclipse.sapphire.ui.SapphirePart.init(SapphirePart.java:147) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsContentNode.init(MasterDetailsContentNode.java:269) at org.eclipse.sapphire.ui.SapphirePart.init(SapphirePart.java:147) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsContentOutline.getRoot(MasterDetailsContentOutline.java:82) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage$5.getElements(MasterDetailsEditorPage.java:583) at org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:1010) at org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:703) at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:1336) at org.eclipse.jface.viewers.TreeViewer.getRawChildren(TreeViewer.java:391) at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren(StructuredViewer.java:917) at org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:605) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:805) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:782) at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:644) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:753) at org.eclipse.jface.viewers.AbstractTreeViewer.internalInitializeTree(AbstractTreeViewer.java:1533) at org.eclipse.jface.viewers.TreeViewer.internalInitializeTree(TreeViewer.java:833) at org.eclipse.jface.viewers.AbstractTreeViewer$5.run(AbstractTreeViewer.java:1517) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1443) at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1404) at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:1510) at org.eclipse.ui.dialogs.FilteredTree$NotifyingTreeViewer.inputChanged(FilteredTree.java:1187) at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:280) at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1690) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage.createContentOutline(MasterDetailsEditorPage.java:792) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage.access$2(MasterDetailsEditorPage.java:569) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage$MasterSection.<init>(MasterDetailsEditorPage.java:1388) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage$RootSection.createMasterPart(MasterDetailsEditorPage.java:1271) at org.eclipse.ui.forms.MasterDetailsBlock.createContent(MasterDetailsBlock.java:161) at org.eclipse.ui.forms.MasterDetailsBlock.createContent(MasterDetailsBlock.java:142) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage$RootSection.createContent(MasterDetailsEditorPage.java:1247) at org.eclipse.sapphire.ui.form.editors.masterdetails.MasterDetailsEditorPage.createFormContent(MasterDetailsEditorPage.java:279) at org.eclipse.ui.forms.editor.FormPage$1.run(FormPage.java:152) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.forms.editor.FormPage.createPartControl(FormPage.java:150) at org.eclipse.sapphire.ui.SapphireEditorFormPage.createPartControl(SapphireEditorFormPage.java:80) at org.eclipse.ui.forms.editor.FormEditor.pageChange(FormEditor.java:471) at org.eclipse.sapphire.ui.SapphireEditor.pageChange(SapphireEditor.java:516) at org.eclipse.ui.part.MultiPageEditorPart.setActivePage(MultiPageEditorPart.java:1067) at org.eclipse.ui.forms.editor.FormEditor.setActivePage(FormEditor.java:603) at org.eclipse.sapphire.ui.SapphireEditor.addPages(SapphireEditor.java:403) at org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:138) at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:348) at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:670) at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595) at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:313) at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:180) at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:270) at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65) at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:473) at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1245) at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1198) at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1597) at org.eclipse.ui.internal.PartStack.add(PartStack.java:493) at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:103) at org.eclipse.ui.internal.PartStack.add(PartStack.java:479) at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:112) at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:63) at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:225) at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:213) at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:808) at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:707) at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:666) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2942) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2850) at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2842) at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2793) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2789) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2773) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2756) at org.eclipse.ui.ide.IDE.openEditor(IDE.java:683) at org.python.pydev.navigator.actions.PyOpenResourceAction.openFiles(PyOpenResourceAction.java:100) at org.python.pydev.navigator.actions.PyOpenPythonFileAction.run(PyOpenPythonFileAction.java:84) at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221) at org.eclipse.ui.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:185) at org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48) at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:866) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:864) at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1152) at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:462) at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1256) at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:275) at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:269) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:309) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) 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:344) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) at org.eclipse.equinox.launcher.Main.main(Main.java:1386) Second fix attempt implemented. Closing based on previous determination. |