Skip to main content



      Home
Home » Eclipse Projects » Sirius » Sequence Diagram(Sequence Diagram Shows Exception)
Sequence Diagram [message #1729686] Mon, 18 April 2016 03:04 Go to next message
Eclipse UserFriend
Hello,
I am trying to generate sequence diagram for my DSL.
I have defined all the necessary services with proper "Ends Ordering"
But when I trying to generate the diagram, It shows following Exception.

My "Ends Orderding" Expression returns following list, which properly mapped with "Execution start" and "Execution End"

mncModel.impl.CommandImpl@1efa0f3 (name: ON)
mncModel.impl.CommandImpl@1b2db54 (name: ONMOTOR)
mncModel.impl.ResponseImpl@99c1e1 (name: POWERON_MOTOR)
mncModel.impl.ResponseImpl@1aac7d9 (name: POWERON)
mncModel.impl.CommandImpl@149f0e6 (name: START)
mncModel.impl.CommandImpl@198e1b1 (name: STARTMOTOR)
mncModel.impl.ResponseImpl@1031f03 (name: STARTED_MOTOR)
mncModel.impl.ResponseImpl@1a9499c (name: STARTED)
mncModel.impl.CommandImpl@1cc7abb (name: INCREASE_RPM)
mncModel.impl.CommandImpl@1c380ef (name: INCREASE_RPM_MOTOR)
mncModel.impl.ResponseImpl@14107bb (name: INCREASED_RPM_MOTOR)
mncModel.impl.ResponseImpl@117a7a1 (name: INCREASED_RPM)

I have doubt that
1) Domain class of "Execution Start" is differ from "Execution End"(mncModel.impl.CommandImpl and mncModel.impl.ResponseImpl), Is it allowed ?


!ENTRY org.eclipse.e4.ui.workbench 4 0 2016-04-18 12:31:35.359
!MESSAGE
!STACK 0
java.lang.IllegalArgumentException
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:77)
at org.eclipse.sirius.diagram.sequence.util.Range.<init>(Range.java:46)
at org.eclipse.sirius.diagram.sequence.business.internal.layout.vertical.SequenceVerticalLayout.initTimeBounds(SequenceVerticalLayout.java:810)
at org.eclipse.sirius.diagram.sequence.business.internal.layout.vertical.SequenceVerticalLayout.init(SequenceVerticalLayout.java:220)
at org.eclipse.sirius.diagram.sequence.business.internal.layout.AbstractSequenceLayout.layout(AbstractSequenceLayout.java:76)
at org.eclipse.sirius.diagram.sequence.business.internal.layout.SequenceLayout.verticalLayout(SequenceLayout.java:89)
at org.eclipse.sirius.diagram.sequence.business.internal.operation.SynchronizeGraphicalOrderingOperation.execute(SynchronizeGraphicalOrderingOperation.java:65)
at org.eclipse.sirius.diagram.sequence.business.internal.operation.SynchronizeGraphicalOrderingOperation.execute(SynchronizeGraphicalOrderingOperation.java:1)
at org.eclipse.sirius.diagram.sequence.business.internal.refresh.RefreshLayoutCommand.doExecute(RefreshLayoutCommand.java:110)
at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
at org.eclipse.emf.workspace.EMFCommandOperation.doExecute(EMFCommandOperation.java:119)
at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:150)
at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:516)
at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.doExecute(WorkspaceCommandStackImpl.java:208)
at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219)
at org.eclipse.sirius.diagram.sequence.ui.tool.internal.edit.part.SequenceDiagramEditPart.activate(SequenceDiagramEditPart.java:189)
at org.eclipse.gef.editparts.AbstractEditPart.addChild(AbstractEditPart.java:215)
at org.eclipse.gef.editparts.SimpleRootEditPart.setContents(SimpleRootEditPart.java:105)
at org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents(AbstractEditPartViewer.java:617)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalViewer.setContents(DiagramGraphicalViewer.java:352)
at org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents(AbstractEditPartViewer.java:626)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initializeGraphicalViewerContents(DiagramEditor.java:872)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.initializeGraphicalViewer(DiagramEditor.java:865)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFlyOutPalette.initializeGraphicalViewer(DiagramEditorWithFlyOutPalette.java:116)
at org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor.initializeGraphicalViewer(DiagramDocumentEditor.java:174)
at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.initializeGraphicalViewer(DDiagramEditorImpl.java:1417)
at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createOriginalGraphicalViewer(DDiagramEditorImpl.java:1386)
at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createMainDiagramSection(DDiagramEditorImpl.java:1311)
at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createGraphicalViewer(DDiagramEditorImpl.java:1300)
at org.eclipse.gef.ui.parts.GraphicalEditor.createPartControl(GraphicalEditor.java:171)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.createPartControl(DiagramEditor.java:1580)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFlyOutPalette.createPartControl(DiagramEditorWithFlyOutPalette.java:328)
at org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor.createPartControl(DiagramDocumentEditor.java:1514)
at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createPartControl(DDiagramEditorImpl.java:497)
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPartControl(CompatibilityPart.java:151)
at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPartControl(CompatibilityEditor.java:99)
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:341)
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.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:898)
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:879)
at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:121)
at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:345)
at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:264)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:104)
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:73)
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:55)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:129)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:971)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:640)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:746)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:717)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:711)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:695)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.showTab(StackRenderer.java:1306)
at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer$1.handleEvent(LazyStackRenderer.java:72)
at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:40)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:186)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4761)
at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:211)
at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:36)
at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:85)
at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:59)
at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:171)
at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:494)
at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:458)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:724)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:396)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1166)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3234)
at org.eclipse.ui.internal.WorkbenchPage.access$25(WorkbenchPage.java:3149)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:3131)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3126)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3090)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3071)
at org.eclipse.sirius.diagram.ui.business.internal.dialect.DiagramDialectUIServices$1.run(DiagramDialectUIServices.java:206)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:186)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4761)
at org.eclipse.sirius.common.ui.tools.api.util.EclipseUIUtil.displaySyncExec(EclipseUIUtil.java:336)
at org.eclipse.sirius.diagram.ui.business.internal.dialect.DiagramDialectUIServices.openEditor(DiagramDialectUIServices.java:216)
at org.eclipse.sirius.diagram.ui.business.internal.dialect.DiagramDialectUIServices.openEditor(DiagramDialectUIServices.java:177)
at org.eclipse.sirius.ui.business.internal.dialect.DialectUIManagerImpl.openEditor(DialectUIManagerImpl.java:106)
at org.eclipse.sirius.ui.tools.internal.actions.creation.CreateRepresentationAction$2.run(CreateRepresentationAction.java:168)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:463)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:371)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:500)
at org.eclipse.ui.internal.progress.ProgressManager$RunnableWithStatus.run(ProgressManager.java:1394)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.progress.ProgressManager$5.run(ProgressManager.java:1228)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:186)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4761)
at org.eclipse.ui.internal.progress.ProgressManager.runInUI(ProgressManager.java:1225)
at org.eclipse.sirius.ui.tools.internal.actions.creation.CreateRepresentationAction.run(CreateRepresentationAction.java:177)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
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:669)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
Re: Sequence Diagram [message #1729736 is a reply to message #1729686] Mon, 18 April 2016 11:20 Go to previous messageGo to next message
Eclipse UserFriend
Hi,

Sequence Diagram specification is very difficult and I suggest you using
an example as Interaction Designer.
You can find an example in Interaction Designer with update site
http://www.obeo.fr/download/release/designer/8.1/community/latest/repository
in Obeo Designer Community Edition - Extensions / Sirius Automated Tests
& Sirius Automated Tests Developer Resources. (Install it, menu
Help/Install New Software/ use above update site and check elements
above to install)

The better is using this example and modify this as your need.

To retrieve the example, use view Plug-ins (Window/Show
View/Other.../Plug-in Development) and import as Projet plug-in named
org.eclipse.sirius.interactions.design

Regards,

--
Julien - Obeo

Need training or professional services for Sirius?
http://www.obeodesigner.com/sirius

[Updated on: Mon, 18 April 2016 11:28] by Moderator

Re: Sequence Diagram [message #1730522 is a reply to message #1729686] Tue, 26 April 2016 09:31 Go to previous messageGo to next message
Eclipse UserFriend
Hi Dhananjay

Le 18/04/2016 15:56, Dhananjay Deshmukh a écrit :
> Hello,
> I am trying to generate sequence diagram for my DSL.
> I have defined all the necessary services with proper "Ends Ordering"
> But when I trying to generate the diagram, It shows following Exception.
>
> My "Ends Orderding" Expression returns following list, which properly
> mapped with "Execution start" and "Execution End"
>
> mailto:mncModel.impl.CommandImpl@1efa0f3 (name: ON)
> mailto:mncModel.impl.CommandImpl@1b2db54 (name: ONMOTOR)
> mailto:mncModel.impl.ResponseImpl@99c1e1 (name: POWERON_MOTOR)
> mailto:mncModel.impl.ResponseImpl@1aac7d9 (name: POWERON)
> mailto:mncModel.impl.CommandImpl@149f0e6 (name: START)
> mailto:mncModel.impl.CommandImpl@198e1b1 (name: STARTMOTOR)
> mailto:mncModel.impl.ResponseImpl@1031f03 (name: STARTED_MOTOR)
> mailto:mncModel.impl.ResponseImpl@1a9499c (name: STARTED)
> mailto:mncModel.impl.CommandImpl@1cc7abb (name: INCREASE_RPM)
> mailto:mncModel.impl.CommandImpl@1c380ef (name: INCREASE_RPM_MOTOR)
> mailto:mncModel.impl.ResponseImpl@14107bb (name: INCREASED_RPM_MOTOR)
> mailto:mncModel.impl.ResponseImpl@117a7a1 (name: INCREASED_RPM)
>
> I have doubt that
> 1) Domain class of "Execution Start" is differ from "Execution
> End"(mncModel.impl.CommandImpl and mncModel.impl.ResponseImpl), Is it
> allowed ?
>
>
> !ENTRY org.eclipse.e4.ui.workbench 4 0 2016-04-18 12:31:35.359
> !MESSAGE !STACK 0
> java.lang.IllegalArgumentException
> at
> com.google.common.base.Preconditions.checkArgument(Preconditions.java:77)
> at
> org.eclipse.sirius.diagram.sequence.util.Range.<init>(Range.java:46)
> at
> org.eclipse.sirius.diagram.sequence.business.internal.layout.vertical.SequenceVerticalLayout.initTimeBounds(SequenceVerticalLayout.java:810)

This usually means that there is something with the bounds of the
instance roles and/or the lifelines before the computation of the
sequence elements bounds. The layout initialization seems to get an
ordinate for the end of the longest lifeline which is smaller than the
ordinante of the beginning of the lifelines.

Could you take a look to the sequence sample VMS (interaction.odesign)
mentionned by Julien and do some tests with the same size attributes ofr
the styles of your mappings (lifeline, instancerrole, endoflife,
execution) ? See [1]


You should also take a look to the Sequence diagram documentation [2]

--
Maxime - Obeo

Need training or professional services for Sirius?
http://www.obeodesigner.com/sirius
--
[1]
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/tree/plugins/org.eclipse.sirius.sample.interactions.design/description/interaction.odesign
[2]
https://www.eclipse.org/sirius/doc/specifier/sequences/Sequence%20Diagrams.html
Re: Sequence Diagram [message #1730616 is a reply to message #1730522] Wed, 27 April 2016 03:20 Go to previous message
Eclipse UserFriend
Thanks Julien and Maxime
Previous Topic:Adding View to Show Xtext Embedded Editor for Selected Elements
Next Topic:Export representation as image problem
Goto Forum:
  


Current Time: Wed Mar 19 09:48:40 EDT 2025

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

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

Back to the top