Community
Participate
Working Groups
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)
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