ftsrg / mondo-collab-framework

MONDO Collaboration Framework (WP4)
Eclipse Public License 1.0
3 stars 1 forks source link

Leg doPutback method seems to fail handling Delete operations #51

Closed imbur closed 8 years ago

imbur commented 8 years ago

When using model locks in the online collaboration tool, lock violation is recognized, but the operation is not blocked, thus the locked model element seems to get deleted from the model. Instead, the exception with the trace below is thrown:

!ENTRY org.eclipse.emf.common 2 0 2016-04-01 18:24:35.449
!MESSAGE An exception was ignored during command execution
!STACK 0
org.eclipse.emf.common.util.WrappedException: An exception was ignored during command execution
    at org.eclipse.emf.common.command.BasicCommandStack.handleError(BasicCommandStack.java:281)
    at org.eclipse.emf.common.command.BasicCommandStack.execute(BasicCommandStack.java:112)
    at org.eclipse.emf.edit.ui.action.CommandActionHandler.run(CommandActionHandler.java:88)
    at org.eclipse.ui.actions.BaseSelectionListenerAction.runWithEvent(BaseSelectionListenerAction.java:168)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:575)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:492)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:403)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:109)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:687)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:594)
    at org.eclipse.swt.widgets.Display.executeNextEvent(Display.java:1217)
    at org.eclipse.swt.widgets.Display.runPendingMessages(Display.java:1198)
    at org.eclipse.swt.widgets.Display.safeReadAndDispatch(Display.java:1181)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1173)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2733)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
    at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
    at WTSpec4M.presentation.WTSpec4MEditorAdvisor$Application.start(WTSpec4MEditorAdvisor.java:94)
    at org.eclipse.rap.ui.internal.application.EntryPointApplicationWrapper.createUI(EntryPointApplicationWrapper.java:38)
    at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
    at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
    at java.lang.Thread.run(Thread.java:745)
    at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
Caused by: java.lang.IllegalArgumentException: T(WTSpec4M.impl.SystemInputImpl@4e3593d (sysId: null, description: null);org.eclipse.emf.ecore.impl.EClassImpl@2e253c00 (name: SystemInput) (instanceClassName: null) (abstract: false, interface: false);)
    at org.mondo.collaboration.security.lens.context.manipulables.EObjectManipulator.assertTuple(EObjectManipulator.java:58)
    at org.mondo.collaboration.security.lens.context.manipulables.DebuggableManipulableWrapper.assertTuple(DebuggableManipulableWrapper.java:53)
    at org.mondo.collaboration.security.lens.bx.RelationalLensXform.doPutback(RelationalLensXform.java:224)
    at org.mondo.collaboration.security.lens.bx.online.OnlineCollaborationSession$Leg.propagateToGold(OnlineCollaborationSession.java:392)
    at org.mondo.collaboration.security.lens.bx.online.OnlineCollaborationSession$Leg.trySubmitModification(OnlineCollaborationSession.java:383)
    at org.mondo.collaboration.online.core.OnlineLeg.trySubmitModification(OnlineLeg.java:79)
    at WTSpec4M.presentation.WTSpec4MEditor$7.commandStackChanged(WTSpec4MEditor.java:1016)
    at org.eclipse.emf.common.command.BasicCommandStack.notifyListeners(BasicCommandStack.java:270)
    at org.eclipse.emf.common.command.BasicCommandStack.execute(BasicCommandStack.java:104)
    ... 25 more
bergmanngabor commented 8 years ago

Do we have a (debug-level) log from this execution?

bergmanngabor commented 8 years ago

Never mind, I think I have figured it out.