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

Bug 501835

Summary: NPE when using the "Base" legacy tab in Ecore Tools
Product: [Modeling] Ecoretools Reporter: Pierre-Charles David <pierre-charles.david>
Component: GeneralAssignee: Project Inbox <ecore-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: P3 CC: cedric.brun
Version: unspecifiedKeywords: triaged
Target Milestone: 3.2.0   
Hardware: All   
OS: All   
See Also: https://git.eclipse.org/r/81696
https://git.eclipse.org/c/ecoretools/org.eclipse.ecoretools.git/commit/?id=8ee9deb00818e4cd2d40d0c5faecd2894353b787
Whiteboard:

Description Pierre-Charles David CLA 2016-09-20 08:47:40 EDT
I'm using Sirius/EEF/EcoreTools from master. Respectively:
* Sirius: v4.0.0-241-g5fd0327
* EEF: v1.7.0_M2-7-gd239799
* Ecore Tools: R3_0_0-52-g63fda26

Steps to reproduce:
1. Open an Ecore Tools diagram, and select any element in it.
2. In the "Properties" view, select the "Base" (sub-)tab (also with "Instatiation", but apparently not with "Annotation", "Extended Metadata" or "GenModel Doc"):

java.lang.NullPointerException
	at org.eclipse.emf.eef.runtime.context.impl.DomainPropertiesEditionContext.createPropertiesEditingComponent(DomainPropertiesEditionContext.java:86)
	at org.eclipse.emf.ecoretools.design.properties.EcoreToolsPropertiesEditingPart.refreshComponent(EcoreToolsPropertiesEditingPart.java:187)
	at org.eclipse.emf.ecoretools.design.properties.EcoreToolsPropertiesEditingPart.setInput(EcoreToolsPropertiesEditingPart.java:152)
	at org.eclipse.eef.properties.ui.legacy.internal.legacy2eef.EEFLegacySection.setInput(EEFLegacySection.java:132)
	at org.eclipse.eef.properties.ui.api.EEFTabContents$2.run(EEFTabContents.java:147)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:173)
	at org.eclipse.eef.properties.ui.api.EEFTabContents.setInput(EEFTabContents.java:150)
	at org.eclipse.eef.properties.ui.api.EEFTabbedPropertySheetPage.processSelectionChanged(EEFTabbedPropertySheetPage.java:515)
	at org.eclipse.eef.properties.ui.api.EEFTabbedPropertySheetPage.access$0(EEFTabbedPropertySheetPage.java:489)
	at org.eclipse.eef.properties.ui.api.EEFTabbedPropertySheetPage$1.selectionChanged(EEFTabbedPropertySheetPage.java:212)
	at org.eclipse.eef.properties.ui.internal.page.EEFTabbedPropertyViewer.fireSelectionChanged(EEFTabbedPropertyViewer.java:117)
	at org.eclipse.eef.properties.ui.internal.page.EEFTabbedPropertyViewer.access$1(EEFTabbedPropertyViewer.java:115)
	at org.eclipse.eef.properties.ui.internal.page.EEFTabbedPropertyViewer$1.widgetSelected(EEFTabbedPropertyViewer.java:99)
	at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:242)
	at org.eclipse.jface.util.OpenStrategy.access$4(OpenStrategy.java:236)
	at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:405)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5219)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1340)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1366)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1349)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1134)
	at org.eclipse.eef.properties.ui.internal.page.propertylist.EEFTabbedPropertyList.select(EEFTabbedPropertyList.java:390)
	at org.eclipse.eef.properties.ui.internal.page.propertylist.EEFListElement.mouseUp(EEFListElement.java:159)
	at org.eclipse.eef.properties.ui.internal.page.propertylist.EEFListElement$2.mouseUp(EEFListElement.java:105)
Comment 1 Pierre-Charles David CLA 2016-09-20 08:50:33 EDT
Actually I get several probably related NPEs, with slightly different stacks:

java.lang.NullPointerException
	at org.eclipse.emf.eef.runtime.impl.parts.CompositePropertiesEditionPart.refresh(CompositePropertiesEditionPart.java:170)
	at org.eclipse.emf.ecoretools.design.properties.EcoreToolsPropertiesEditingPart.refresh(EcoreToolsPropertiesEditingPart.java:169)
	at org.eclipse.eef.properties.ui.legacy.internal.legacy2eef.EEFLegacySection.refresh(EEFLegacySection.java:121)
	at org.eclipse.eef.properties.ui.api.EEFTabContents$3.run(EEFTabContents.java:162)

java.lang.NullPointerException
	at org.eclipse.emf.ecoretools.design.properties.EcoreToolsPropertiesEditingPart.initSemanticContents(EcoreToolsPropertiesEditingPart.java:221)
	at org.eclipse.emf.ecoretools.design.properties.EcoreToolsPropertiesEditingPart.refresh(EcoreToolsPropertiesEditingPart.java:167)
	at org.eclipse.eef.properties.ui.legacy.internal.legacy2eef.EEFLegacySection.refresh(EEFLegacySection.java:121)
	at org.eclipse.eef.properties.ui.api.EEFTabContents$3.run(EEFTabContents.java:162)
Comment 3 Cedric Brun CLA 2016-10-11 10:01:09 EDT
(In reply to Eclipse Genie from comment #2)
> Gerrit change https://git.eclipse.org/r/81696 was merged to [master].
> Commit:
> http://git.eclipse.org/c/ecoretools/org.eclipse.ecoretools.git/commit/
> ?id=8ee9deb00818e4cd2d40d0c5faecd2894353b787

fixed with this commit.