Skip to main content



      Home
Home » Modeling » GMF (Graphical Modeling Framework) » Stack Trace When Instantiating New Editor
Stack Trace When Instantiating New Editor [message #147864] Mon, 27 August 2007 04:48 Go to next message
Eclipse UserFriend
Originally posted by: lmr109.cs.york.ac.uk

Hi,

I've been experiencing some behaviour in my GMF editor that I don't
understand. When I load an instance of the editor (i.e. by doubling clicking
on a *.my_diagram file), I receive a stack trace, such as the one shown at
the bottom of this post, in the editor view.

However, if I close and re-open Eclipse with the editor view still open, the
editor loads without error, and I can edit my model.

Having investigated the problem somewhat, it's apparent that when I receive
an error, GMF is loading a dynamically-typed version of my model (i.e. all
of the EMF objects are instances of DynamicEObjectImpl). When the editor
works as I intend, the EMF objects loaded are instances of the meta-classes
generated by my model (i.e. instance of things like BlockImpl).

Does anyone know why my model is being loaded "dynamically" when a new
editor is instantiated? How do I work around this?

Apologies if my explanation is a little unclear! Thanks in advance.

Cheers,
Louis Rose.

java.lang.IllegalArgumentException: The feature 'name' is not a valid
feature
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eOpenGet(BasicEO bjectImpl.java:1052)
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:1006)
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:994)
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:989)
at
org.epsilon.fptc.system.diagram.parsers.AbstractParser.getVa lue(AbstractParser.java:149)
at
org.epsilon.fptc.system.diagram.parsers.AbstractParser.getVa lues(AbstractParser.java:140)
at
org.epsilon.fptc.system.diagram.parsers.MessageFormatParser. getPrintString(MessageFormatParser.java:172)
at
org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .getLabelText(BlockNameEditPart.java:221)
at
org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .refreshLabel(BlockNameEditPart.java:423)
at
org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .refreshVisuals(BlockNameEditPart.java:412)
at
org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .setLabel(BlockNameEditPart.java:171)
at
org.epsilon.fptc.system.diagram.edit.parts.BlockEditPart.add FixedChild(BlockEditPart.java:117)
at
org.epsilon.fptc.system.diagram.edit.parts.BlockEditPart.add ChildVisual(BlockEditPart.java:153)
at
org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:197)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.addChild(GraphicalEditPart.java:1292)
at
org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(A bstractEditPart.java:727)
at
org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractE ditPart.java:677)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh( AbstractGraphicalEditPart.java:564)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.access$3(GraphicalEditPart.java:1)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt$3.run(GraphicalEditPart.java:836)
at
org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:262)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.refresh(GraphicalEditPart.java:826)
at
org.eclipse.gef.editparts.AbstractEditPart.addNotify(Abstrac tEditPart.java:235)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotif y(AbstractGraphicalEditPart.java:212)
at
org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:198)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.addChild(GraphicalEditPart.java:1292)
at
org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(A bstractEditPart.java:727)
at
org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractE ditPart.java:677)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh( AbstractGraphicalEditPart.java:564)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.access$3(GraphicalEditPart.java:1)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt$3.run(GraphicalEditPart.java:836)
at
org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:262)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.refresh(GraphicalEditPart.java:826)
at
org.eclipse.gef.editparts.AbstractEditPart.addNotify(Abstrac tEditPart.java:235)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotif y(AbstractGraphicalEditPart.java:212)
at
org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:198)
at
org.eclipse.gef.editparts.SimpleRootEditPart.setContents(Sim pleRootEditPart.java:101)
at
org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents( AbstractEditPartViewer.java:601)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalVie wer.setContents(DiagramGraphicalViewer.java:378)
at
org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents( AbstractEditPartViewer.java:610)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initi alizeGraphicalViewerContents(DiagramEditor.java:857)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initi alizeGraphicalViewer(DiagramEditor.java:850)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFl yOutPalette.initializeGraphicalViewer(DiagramEditorWithFlyOu tPalette.java:112)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.creat eGraphicalViewer(DiagramEditor.java:794)
at
org.eclipse.gef.ui.parts.GraphicalEditor.createPartControl(G raphicalEditor.java:163)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.creat ePartControl(DiagramEditor.java:1548)
at
org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFl yOutPalette.createPartControl(DiagramEditorWithFlyOutPalette .java:310)
at
org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.Di agramDocumentEditor.createPartControl(DiagramDocumentEditor. java:1459)
at
org.eclipse.ui.internal.EditorReference.createPartHelper(Edi torReference.java:661)
at
org.eclipse.ui.internal.EditorReference.createPart(EditorRef erence.java:426)
at
org.eclipse.ui.internal.WorkbenchPartReference.getPart(Workb enchPartReference.java:592)
at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:29 9)
at
org.eclipse.ui.internal.presentations.PresentablePart.setVis ible(PresentablePart.java:179)
at
org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.select(PresentablePartFolder.java:268)
at
org.eclipse.ui.internal.presentations.util.LeftToRightTabOrd er.select(LeftToRightTabOrder.java:65)
at
org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation.selectPart(TabbedStackPresentation.java:400)
at
org.eclipse.ui.internal.PartStack.refreshPresentationSelecti on(PartStack.java:1256)
at org.eclipse.ui.internal.PartStack.setSelection(PartStack.jav a:1209)
at
org.eclipse.ui.internal.PartStack.presentationSelectionChang ed(PartStack.java:843)
at org.eclipse.ui.internal.PartStack.access$1(PartStack.java:82 9)
at org.eclipse.ui.internal.PartStack$1.selectPart(PartStack.jav a:139)
at
org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation$1.handleEvent(TabbedStackPresentation.java:131)
at
org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:267)
at
org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:276)
at
org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder.access$1(DefaultTabFolder.java:1)
at
org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder$2.handleEvent(DefaultTabFolder.java:84)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:962)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:947)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:7 06)
at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.ja va:3227)
at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:20 05)
at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.j ava:316)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3682)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3293)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 19)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:289)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:106)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:153)
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(EclipseS tarter.java:363)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:176)
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: 504)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443)
at org.eclipse.equinox.launcher.Main.run(Main.java:1169)
at org.eclipse.equinox.launcher.Main.main(Main.java:1144)
Re: Stack Trace When Instantiating New Editor [message #147894 is a reply to message #147864] Mon, 27 August 2007 06:30 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: merks.ca.ibm.com

Louis,

EMF typically finds your model because
EPackage.Registry.INSTANCE.getEPackage(<your-model's-nsURI>) will return
the EPackage for your model given the namespace URI that it finds in the
document being parsed. Is there some reason why this registry might
disappear or might not be present in the first place? Have a look at
your model's plugin.xml and be sure the generated_package extension
point is registering your model with the same nsURI value as appears in
the generated XyzPackage.eNS_URI.


Louis Rose wrote:
> Hi,
>
> I've been experiencing some behaviour in my GMF editor that I don't
> understand. When I load an instance of the editor (i.e. by doubling clicking
> on a *.my_diagram file), I receive a stack trace, such as the one shown at
> the bottom of this post, in the editor view.
>
> However, if I close and re-open Eclipse with the editor view still open, the
> editor loads without error, and I can edit my model.
>
> Having investigated the problem somewhat, it's apparent that when I receive
> an error, GMF is loading a dynamically-typed version of my model (i.e. all
> of the EMF objects are instances of DynamicEObjectImpl). When the editor
> works as I intend, the EMF objects loaded are instances of the meta-classes
> generated by my model (i.e. instance of things like BlockImpl).
>
> Does anyone know why my model is being loaded "dynamically" when a new
> editor is instantiated? How do I work around this?
>
> Apologies if my explanation is a little unclear! Thanks in advance.
>
> Cheers,
> Louis Rose.
>
> java.lang.IllegalArgumentException: The feature 'name' is not a valid
> feature
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eOpenGet(BasicEO bjectImpl.java:1052)
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:1006)
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:994)
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:989)
> at
> org.epsilon.fptc.system.diagram.parsers.AbstractParser.getVa lue(AbstractParser.java:149)
> at
> org.epsilon.fptc.system.diagram.parsers.AbstractParser.getVa lues(AbstractParser.java:140)
> at
> org.epsilon.fptc.system.diagram.parsers.MessageFormatParser. getPrintString(MessageFormatParser.java:172)
> at
> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .getLabelText(BlockNameEditPart.java:221)
> at
> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .refreshLabel(BlockNameEditPart.java:423)
> at
> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .refreshVisuals(BlockNameEditPart.java:412)
> at
> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .setLabel(BlockNameEditPart.java:171)
> at
> org.epsilon.fptc.system.diagram.edit.parts.BlockEditPart.add FixedChild(BlockEditPart.java:117)
> at
> org.epsilon.fptc.system.diagram.edit.parts.BlockEditPart.add ChildVisual(BlockEditPart.java:153)
> at
> org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:197)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.addChild(GraphicalEditPart.java:1292)
> at
> org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(A bstractEditPart.java:727)
> at
> org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractE ditPart.java:677)
> at
> org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh( AbstractGraphicalEditPart.java:564)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.access$3(GraphicalEditPart.java:1)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt$3.run(GraphicalEditPart.java:836)
> at
> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:262)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.refresh(GraphicalEditPart.java:826)
> at
> org.eclipse.gef.editparts.AbstractEditPart.addNotify(Abstrac tEditPart.java:235)
> at
> org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotif y(AbstractGraphicalEditPart.java:212)
> at
> org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:198)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.addChild(GraphicalEditPart.java:1292)
> at
> org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(A bstractEditPart.java:727)
> at
> org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractE ditPart.java:677)
> at
> org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh( AbstractGraphicalEditPart.java:564)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.access$3(GraphicalEditPart.java:1)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt$3.run(GraphicalEditPart.java:836)
> at
> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:262)
> at
> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.refresh(GraphicalEditPart.java:826)
> at
> org.eclipse.gef.editparts.AbstractEditPart.addNotify(Abstrac tEditPart.java:235)
> at
> org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotif y(AbstractGraphicalEditPart.java:212)
> at
> org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:198)
> at
> org.eclipse.gef.editparts.SimpleRootEditPart.setContents(Sim pleRootEditPart.java:101)
> at
> org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents( AbstractEditPartViewer.java:601)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalVie wer.setContents(DiagramGraphicalViewer.java:378)
> at
> org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents( AbstractEditPartViewer.java:610)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initi alizeGraphicalViewerContents(DiagramEditor.java:857)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initi alizeGraphicalViewer(DiagramEditor.java:850)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFl yOutPalette.initializeGraphicalViewer(DiagramEditorWithFlyOu tPalette.java:112)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.creat eGraphicalViewer(DiagramEditor.java:794)
> at
> org.eclipse.gef.ui.parts.GraphicalEditor.createPartControl(G raphicalEditor.java:163)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.creat ePartControl(DiagramEditor.java:1548)
> at
> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFl yOutPalette.createPartControl(DiagramEditorWithFlyOutPalette .java:310)
> at
> org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.Di agramDocumentEditor.createPartControl(DiagramDocumentEditor. java:1459)
> at
> org.eclipse.ui.internal.EditorReference.createPartHelper(Edi torReference.java:661)
> at
> org.eclipse.ui.internal.EditorReference.createPart(EditorRef erence.java:426)
> at
> org.eclipse.ui.internal.WorkbenchPartReference.getPart(Workb enchPartReference.java:592)
> at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:29 9)
> at
> org.eclipse.ui.internal.presentations.PresentablePart.setVis ible(PresentablePart.java:179)
> at
> org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.select(PresentablePartFolder.java:268)
> at
> org.eclipse.ui.internal.presentations.util.LeftToRightTabOrd er.select(LeftToRightTabOrder.java:65)
> at
> org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation.selectPart(TabbedStackPresentation.java:400)
> at
> org.eclipse.ui.internal.PartStack.refreshPresentationSelecti on(PartStack.java:1256)
> at org.eclipse.ui.internal.PartStack.setSelection(PartStack.jav a:1209)
> at
> org.eclipse.ui.internal.PartStack.presentationSelectionChang ed(PartStack.java:843)
> at org.eclipse.ui.internal.PartStack.access$1(PartStack.java:82 9)
> at org.eclipse.ui.internal.PartStack$1.selectPart(PartStack.jav a:139)
> at
> org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation$1.handleEvent(TabbedStackPresentation.java:131)
> at
> org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:267)
> at
> org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:276)
> at
> org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder.access$1(DefaultTabFolder.java:1)
> at
> org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder$2.handleEvent(DefaultTabFolder.java:84)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:962)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:947)
> at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:7 06)
> at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.ja va:3227)
> at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:20 05)
> at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.j ava:316)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3682)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3293)
> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2389)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 19)
> at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:289)
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:461)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
> at
> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:106)
> at
> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:153)
> 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(EclipseS tarter.java:363)
> at
> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:176)
> 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: 504)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1169)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1144)
>
>
>
Re: Stack Trace When Instantiating New Editor [message #148127 is a reply to message #147894] Wed, 29 August 2007 04:39 Go to previous message
Eclipse UserFriend
Originally posted by: lmr109.cs.york.ac.uk

Hi Ed,

Many thanks for the reply.

I see! You were absolutely correct - there was a reason why the registry
might not be present. Another suite of plug-ins that I use do some magic
with the registry, which was causing the conflict with my GMF editor.
Removing the reference to my model from that suite of plug-ins solved the
problem.

Thanks very much for your insight.

Cheers,
Louis.

"Ed Merks" <merks@ca.ibm.com> wrote in message
news:fau959$qdt$2@build.eclipse.org...
> Louis,
>
> EMF typically finds your model because
> EPackage.Registry.INSTANCE.getEPackage(<your-model's-nsURI>) will return
> the EPackage for your model given the namespace URI that it finds in the
> document being parsed. Is there some reason why this registry might
> disappear or might not be present in the first place? Have a look at your
> model's plugin.xml and be sure the generated_package extension point is
> registering your model with the same nsURI value as appears in the
> generated XyzPackage.eNS_URI.
>
>
> Louis Rose wrote:
>> Hi,
>>
>> I've been experiencing some behaviour in my GMF editor that I don't
>> understand. When I load an instance of the editor (i.e. by doubling
>> clicking on a *.my_diagram file), I receive a stack trace, such as the
>> one shown at the bottom of this post, in the editor view.
>>
>> However, if I close and re-open Eclipse with the editor view still open,
>> the editor loads without error, and I can edit my model.
>>
>> Having investigated the problem somewhat, it's apparent that when I
>> receive an error, GMF is loading a dynamically-typed version of my model
>> (i.e. all of the EMF objects are instances of DynamicEObjectImpl). When
>> the editor works as I intend, the EMF objects loaded are instances of the
>> meta-classes generated by my model (i.e. instance of things like
>> BlockImpl).
>>
>> Does anyone know why my model is being loaded "dynamically" when a new
>> editor is instantiated? How do I work around this?
>>
>> Apologies if my explanation is a little unclear! Thanks in advance.
>>
>> Cheers,
>> Louis Rose.
>>
>> java.lang.IllegalArgumentException: The feature 'name' is not a valid
>> feature
>> at
>> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eOpenGet(BasicEO bjectImpl.java:1052)
>> at
>> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:1006)
>> at
>> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:994)
>> at
>> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjec tImpl.java:989)
>> at
>> org.epsilon.fptc.system.diagram.parsers.AbstractParser.getVa lue(AbstractParser.java:149)
>> at
>> org.epsilon.fptc.system.diagram.parsers.AbstractParser.getVa lues(AbstractParser.java:140)
>> at
>> org.epsilon.fptc.system.diagram.parsers.MessageFormatParser. getPrintString(MessageFormatParser.java:172)
>> at
>> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .getLabelText(BlockNameEditPart.java:221)
>> at
>> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .refreshLabel(BlockNameEditPart.java:423)
>> at
>> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .refreshVisuals(BlockNameEditPart.java:412)
>> at
>> org.epsilon.fptc.system.diagram.edit.parts.BlockNameEditPart .setLabel(BlockNameEditPart.java:171)
>> at
>> org.epsilon.fptc.system.diagram.edit.parts.BlockEditPart.add FixedChild(BlockEditPart.java:117)
>> at
>> org.epsilon.fptc.system.diagram.edit.parts.BlockEditPart.add ChildVisual(BlockEditPart.java:153)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:197)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.addChild(GraphicalEditPart.java:1292)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(A bstractEditPart.java:727)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractE ditPart.java:677)
>> at
>> org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh( AbstractGraphicalEditPart.java:564)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.access$3(GraphicalEditPart.java:1)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt$3.run(GraphicalEditPart.java:836)
>> at
>> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:262)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.refresh(GraphicalEditPart.java:826)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.addNotify(Abstrac tEditPart.java:235)
>> at
>> org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotif y(AbstractGraphicalEditPart.java:212)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:198)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.addChild(GraphicalEditPart.java:1292)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(A bstractEditPart.java:727)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractE ditPart.java:677)
>> at
>> org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh( AbstractGraphicalEditPart.java:564)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.access$3(GraphicalEditPart.java:1)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt$3.run(GraphicalEditPart.java:836)
>> at
>> org.eclipse.emf.transaction.impl.TransactionalEditingDomainI mpl.runExclusive(TransactionalEditingDomainImpl.java:262)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPa rt.refresh(GraphicalEditPart.java:826)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.addNotify(Abstrac tEditPart.java:235)
>> at
>> org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotif y(AbstractGraphicalEditPart.java:212)
>> at
>> org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:198)
>> at
>> org.eclipse.gef.editparts.SimpleRootEditPart.setContents(Sim pleRootEditPart.java:101)
>> at
>> org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents( AbstractEditPartViewer.java:601)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalVie wer.setContents(DiagramGraphicalViewer.java:378)
>> at
>> org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents( AbstractEditPartViewer.java:610)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initi alizeGraphicalViewerContents(DiagramEditor.java:857)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initi alizeGraphicalViewer(DiagramEditor.java:850)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFl yOutPalette.initializeGraphicalViewer(DiagramEditorWithFlyOu tPalette.java:112)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.creat eGraphicalViewer(DiagramEditor.java:794)
>> at
>> org.eclipse.gef.ui.parts.GraphicalEditor.createPartControl(G raphicalEditor.java:163)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.creat ePartControl(DiagramEditor.java:1548)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFl yOutPalette.createPartControl(DiagramEditorWithFlyOutPalette .java:310)
>> at
>> org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.Di agramDocumentEditor.createPartControl(DiagramDocumentEditor. java:1459)
>> at
>> org.eclipse.ui.internal.EditorReference.createPartHelper(Edi torReference.java:661)
>> at
>> org.eclipse.ui.internal.EditorReference.createPart(EditorRef erence.java:426)
>> at
>> org.eclipse.ui.internal.WorkbenchPartReference.getPart(Workb enchPartReference.java:592)
>> at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:29 9)
>> at
>> org.eclipse.ui.internal.presentations.PresentablePart.setVis ible(PresentablePart.java:179)
>> at
>> org.eclipse.ui.internal.presentations.util.PresentablePartFo lder.select(PresentablePartFolder.java:268)
>> at
>> org.eclipse.ui.internal.presentations.util.LeftToRightTabOrd er.select(LeftToRightTabOrder.java:65)
>> at
>> org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation.selectPart(TabbedStackPresentation.java:400)
>> at
>> org.eclipse.ui.internal.PartStack.refreshPresentationSelecti on(PartStack.java:1256)
>> at org.eclipse.ui.internal.PartStack.setSelection(PartStack.jav a:1209)
>> at
>> org.eclipse.ui.internal.PartStack.presentationSelectionChang ed(PartStack.java:843)
>> at org.eclipse.ui.internal.PartStack.access$1(PartStack.java:82 9)
>> at org.eclipse.ui.internal.PartStack$1.selectPart(PartStack.jav a:139)
>> at
>> org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation$1.handleEvent(TabbedStackPresentation.java:131)
>> at
>> org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:267)
>> at
>> org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:276)
>> at
>> org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder.access$1(DefaultTabFolder.java:1)
>> at
>> org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder$2.handleEvent(DefaultTabFolder.java:84)
>> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:962)
>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:947)
>> at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:7 06)
>> at org.eclipse.swt.custom.CTabFolder.setSelection(CTabFolder.ja va:3227)
>> at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:20 05)
>> at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.j ava:316)
>> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :66)
>> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
>> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3682)
>> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3293)
>> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2389)
>> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
>> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 19)
>> at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
>> at
>> org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:289)
>> at
>> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:461)
>> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
>> at
>> org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:106)
>> at
>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:153)
>> 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(EclipseS tarter.java:363)
>> at
>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:176)
>> 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: 504)
>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443)
>> at org.eclipse.equinox.launcher.Main.run(Main.java:1169)
>> at org.eclipse.equinox.launcher.Main.main(Main.java:1144)
>>
>>
>>
Previous Topic:Problem related to IPopupMenuContributionPolicy
Next Topic:Different views of the custom model possible?
Goto Forum:
  


Current Time: Thu May 08 12:24:22 EDT 2025

Powered by FUDForum. Page generated in 0.13159 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top