Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-252

designer: Gleichzeitiges löschen von mehreren Elementen nicht möglich -> NullPointerException

    XMLWordPrintable

Details

    Description

      Reproduzierbar durch:

      • Beliebiges Diagramm im fox designer erstellen oder öffnen (muss mehrere Elemente besitzen)
      • In der Palette "Marquee" selektieren
      • im Diagramm mehrere Elemente damit markieren
      • Auf entfernen drücken

      Problem:

      • Elemente werden nicht gelöscht, folgende Exception wird geworfen:

      !ENTRY org.eclipse.graphiti 4 0 2012-10-01 12:04:51.600
      !MESSAGE refresh edit part problem
      !STACK 0
      java.lang.NullPointerException
      at org.eclipse.graphiti.internal.services.impl.PeServiceImpl.getDiagramForShape(PeServiceImpl.java:674)
      at org.eclipse.graphiti.internal.services.impl.PeServiceImpl.getDiagramForPictogramElement(PeServiceImpl.java:651)
      at org.eclipse.bpmn2.modeler.ui.editor.DesignEditorSite.handlePostSelectionChanged(DesignEditorSite.java:53)
      at org.eclipse.ui.part.MultiPageEditorSite$4.selectionChanged(MultiPageEditorSite.java:386)
      at org.eclipse.gef.ui.parts.AbstractEditPartViewer.fireSelectionChanged(AbstractEditPartViewer.java:247)
      at org.eclipse.gef.ui.parts.AbstractEditPartViewer$1.run(AbstractEditPartViewer.java:131)
      at org.eclipse.gef.SelectionManager.fireSelectionChanged(SelectionManager.java:144)
      at org.eclipse.gef.SelectionManager.deselect(SelectionManager.java:118)
      at org.eclipse.gef.ui.parts.AbstractEditPartViewer.deselect(AbstractEditPartViewer.java:202)
      at org.eclipse.gef.editparts.AbstractEditPart.removeNotify(AbstractEditPart.java:942)
      at org.eclipse.gef.editparts.AbstractGraphicalEditPart.removeNotify(AbstractGraphicalEditPart.java:823)
      at org.eclipse.gef.editparts.AbstractEditPart.removeChild(AbstractEditPart.java:880)
      at org.eclipse.gef.editparts.AbstractEditPart.refreshChildren(AbstractEditPart.java:793)
      at org.eclipse.graphiti.ui.internal.parts.ShapeEditPart.refreshChildren(ShapeEditPart.java:642)
      at org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractEditPart.java:726)
      at org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh(AbstractGraphicalEditPart.java:644)
      at org.eclipse.graphiti.ui.internal.parts.ShapeEditPart.refresh(ShapeEditPart.java:559)
      at org.eclipse.graphiti.ui.internal.parts.DiagramEditPart.refresh(DiagramEditPart.java:185)
      at org.eclipse.graphiti.ui.editor.DefaultRefreshBehavior.internalRefreshEditPart(DefaultRefreshBehavior.java:256)
      at org.eclipse.graphiti.ui.editor.DefaultRefreshBehavior.refresh(DefaultRefreshBehavior.java:170)
      at org.eclipse.graphiti.ui.editor.DiagramEditor.refresh(DiagramEditor.java:1079)
      at org.eclipse.graphiti.ui.internal.editor.DiagramRefreshJob.runInUIThread(DiagramRefreshJob.java:102)
      at org.eclipse.graphiti.ui.internal.editor.DiagramChangeListener.resourceSetChanged(DiagramChangeListener.java:150)
      at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl$1.run(TransactionalEditingDomainImpl.java:781)
      at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.runExclusive(TransactionalEditingDomainImpl.java:328)
      at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.postcommit(TransactionalEditingDomainImpl.java:771)
      at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.deactivate(TransactionalEditingDomainImpl.java:543)
      at org.eclipse.emf.transaction.impl.TransactionImpl.close(TransactionImpl.java:712)
      at org.eclipse.emf.transaction.impl.TransactionImpl.commit(TransactionImpl.java:474)
      at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:155)
      at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:513)
      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.graphiti.ui.internal.editor.GFWorkspaceCommandStackImpl.execute(GFWorkspaceCommandStackImpl.java:83)
      at org.eclipse.graphiti.ui.internal.editor.GFCommandStack.execute(GFCommandStack.java:124)
      at org.eclipse.graphiti.ui.internal.action.AbstractPreDefinedAction.executeOnCommandStack(AbstractPreDefinedAction.java:75)
      at org.eclipse.graphiti.ui.internal.action.AbstractPreDefinedAction.genericRun(AbstractPreDefinedAction.java:93)
      at org.eclipse.graphiti.ui.internal.action.DeleteAction.run(DeleteAction.java:95)
      at org.eclipse.gef.KeyHandler.performStroke(KeyHandler.java:83)
      at org.eclipse.gef.KeyHandler.keyPressed(KeyHandler.java:55)
      at org.eclipse.gef.KeyHandler.keyPressed(KeyHandler.java:59)
      at org.eclipse.gef.ui.parts.GraphicalViewerKeyHandler.keyPressed(GraphicalViewerKeyHandler.java:355)
      at org.eclipse.graphiti.ui.internal.editor.GFMarqueeSelectionTool.handleKeyDown(GFMarqueeSelectionTool.java:462)
      at org.eclipse.gef.tools.AbstractTool.keyDown(AbstractTool.java:1016)
      at org.eclipse.gef.EditDomain.keyDown(EditDomain.java:169)
      at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchKeyPressed(DomainEventDispatcher.java:252)
      at org.eclipse.draw2d.LightweightSystem$EventHandler.keyPressed(LightweightSystem.java:497)
      at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:167)
      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)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
      at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
      at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1100)
      at org.eclipse.swt.widgets.Widget.wmKeyDown(Widget.java:1823)
      at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Control.java:4892)
      at org.eclipse.swt.widgets.Control.windowProc(Control.java:4560)
      at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
      at org.eclipse.swt.widgets.Display.windowProc(Display.java:4989)
      at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
      at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2546)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756)
      at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1022)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:916)
      at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
      at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:585)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:540)
      at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
      at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
      at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
      at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
      at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
      at org.eclipse.equinox.launcher.Main.main(Main.java:1414)

      !ENTRY org.eclipse.ui 4 0 2012-10-01 12:04:51.622
      !MESSAGE Unhandled event loop exception
      !STACK 0
      org.eclipse.swt.SWTException: Failed to execute runnable (org.eclipse.swt.SWTException: Graphic is disposed)
      at org.eclipse.swt.SWT.error(SWT.java:4361)
      at org.eclipse.swt.SWT.error(SWT.java:4276)
      at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138)
      at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4144)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761)
      at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1022)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:916)
      at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
      at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:585)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:540)
      at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
      at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
      at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
      at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
      at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
      at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
      Caused by: org.eclipse.swt.SWTException: Graphic is disposed
      at org.eclipse.swt.SWT.error(SWT.java:4361)
      at org.eclipse.swt.SWT.error(SWT.java:4276)
      at org.eclipse.swt.SWT.error(SWT.java:4247)
      at org.eclipse.swt.graphics.Font.getFontData(Font.java:185)
      at org.eclipse.draw2d.ScaledGraphics.getCachedFontData(ScaledGraphics.java:533)
      at org.eclipse.draw2d.ScaledGraphics.zoomFont(ScaledGraphics.java:920)
      at org.eclipse.draw2d.ScaledGraphics.setLocalFont(ScaledGraphics.java:848)
      at org.eclipse.draw2d.ScaledGraphics.setFont(ScaledGraphics.java:767)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1111)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1202)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1206)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1202)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1202)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.graphiti.ui.internal.fixed.FixedScalableFreeformLayeredPane.paintClientArea(FixedScalableFreeformLayeredPane.java:53)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1202)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1197)
      at org.eclipse.draw2d.Viewport.paintClientArea(Viewport.java:160)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.Figure.paintChildren(Figure.java:1167)
      at org.eclipse.draw2d.Figure.paintClientArea(Figure.java:1202)
      at org.eclipse.draw2d.Figure.paint(Figure.java:1117)
      at org.eclipse.draw2d.DeferredUpdateManager.paint(DeferredUpdateManager.java:165)
      at org.eclipse.draw2d.LightweightSystem.paint(LightweightSystem.java:203)
      at org.eclipse.draw2d.LightweightSystem$2.handleEvent(LightweightSystem.java:110)
      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)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
      at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1463)
      at org.eclipse.swt.widgets.Control.windowProc(Control.java:4585)
      at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
      at org.eclipse.swt.widgets.Display.windowProc(Display.java:4989)
      at org.eclipse.swt.internal.win32.OS.RedrawWindow(Native Method)
      at org.eclipse.swt.widgets.Control.update(Control.java:4380)
      at org.eclipse.swt.widgets.Control.update(Control.java:4370)
      at org.eclipse.draw2d.NativeGraphicsSource.getGraphics(NativeGraphicsSource.java:48)
      at org.eclipse.draw2d.DeferredUpdateManager.getGraphics(DeferredUpdateManager.java:147)
      at org.eclipse.draw2d.DeferredUpdateManager.repairDamage(DeferredUpdateManager.java:310)
      at org.eclipse.draw2d.DeferredUpdateManager.performUpdate(DeferredUpdateManager.java:192)
      at org.eclipse.draw2d.DeferredUpdateManager$UpdateRequest.run(DeferredUpdateManager.java:44)
      at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
      at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
      ... 24 more

      Gewünschtes Verhalten:

      • Mehrere Elemente lassen sich gleichzeitig löschen

      Hinweis (optional):

      • Wenn man das Diagramm speichert, schließt und wieder öffnet, dann sind die selektierten Elemente tatsächlich gelöscht

      mgm-controller-panel

        This is the controller panel for Smart Panels app

        Attachments

          Activity

            People

              Unassigned Unassigned
              smirnov Roman Smirnov
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Salesforce