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

Bug 326322

Summary: EEF Editor crashes when selecting invalid elements
Product: [Modeling] EEF Reporter: William Piers <william.piers>
Component: GeneralAssignee: EEF Inbox <emft.eef-inbox>
Status: CLOSED WONTFIX QA Contact:
Severity: normal    
Priority: P3 CC: stephane.begaudeau
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows 7   
Whiteboard:

Description William Piers CLA 2010-09-27 11:44:57 EDT
Steps to reproduce:
- create an ecore model, eef model and so on
- modify the ecore model, e.g. delete an EAttribute which is used by the EEF model
- edit the EEF model to re-assign the invalid view (i.e. the one related to the deleted feature) to another feature
=> the EEF editor throws the error below, and modifications are no longer savables

Workaround:
Open the eef model using EMF's reflective editor.

java.lang.IllegalArgumentException: Argument cannot be null
at org.eclipse.swt.SWT.error(SWT.java:4064)
at org.eclipse.swt.SWT.error(SWT.java:3998)
at org.eclipse.swt.SWT.error(SWT.java:3969)
at org.eclipse.swt.widgets.Widget.error(Widget.java:468)
at org.eclipse.swt.widgets.Text.setText(Text.java:1951)
at org.eclipse.emf.eef.runtime.ui.widgets.EObjectFlatComboViewer.initComponent(EObjectFlatComboViewer.java:192)
at org.eclipse.emf.eef.runtime.ui.widgets.EObjectFlatComboViewer.setSelection(EObjectFlatComboViewer.java:172)
at org.eclipse.emf.eef.components.parts.forms.PropertiesEditionElementCustomPropertiesEditionPartForm.initModel(PropertiesEditionElementCustomPropertiesEditionPartForm.java:40)
at org.eclipse.emf.eef.components.components.PropertiesEditionElementBasePropertiesEditionComponent.initPart(PropertiesEditionElementBasePropertiesEditionComponent.java:240)
at org.eclipse.emf.eef.runtime.impl.components.ComposedPropertiesEditionComponent.initPart(ComposedPropertiesEditionComponent.java:113)
at org.eclipse.emf.eef.components.components.PropertiesEditionElementPropertiesEditionComponent.initPart(PropertiesEditionElementPropertiesEditionComponent.java:112)
at org.eclipse.emf.eef.runtime.impl.components.ComposedPropertiesEditionComponent.initPart(ComposedPropertiesEditionComponent.java:124)
at org.eclipse.emf.eef.runtime.ui.properties.sections.PropertiesEditionSection.initSemanticContents(PropertiesEditionSection.java:201)
at org.eclipse.emf.eef.runtime.ui.properties.sections.PropertiesEditionSection.refreshComponent(PropertiesEditionSection.java:191)
at org.eclipse.emf.eef.runtime.ui.properties.sections.PropertiesEditionSection.setInput(PropertiesEditionSection.java:168)
at org.eclipse.ui.views.properties.tabbed.TabContents$5.run(TabContents.java:181)
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.ui.views.properties.tabbed.TabContents.setInput(TabContents.java:184)
at org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage$SelectionChangedListener.selectionChanged(TabbedPropertySheetPage.java:212)
at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:162)
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.Viewer.fireSelectionChanged(Viewer.java:160)
at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2162)
at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1190)
at org.eclipse.jface.viewers.StructuredViewer$4.widgetSelected(StructuredViewer.java:1220)
at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:228)
at org.eclipse.jface.util.OpenStrategy.access$4(OpenStrategy.java:222)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:389)
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.Widget.sendEvent(Widget.java:1077)
Comment 1 Stephane Begaudeau CLA 2016-05-30 11:08:38 EDT
The Eclipse EEF team has worked over the past few months on a brand new runtime using a reflective approach which can be used more easily with Eclipse Sirius. Since we do not plan to continue to work on the old runtime and its code generation approach, I will close this issue for now.

If you want to contribute, you can reopen this issue and submit a contribution to the project thanks to our Gerrit: https://git.eclipse.org/r/#/admin/projects/eef/org.eclipse.eef