- This topic has 7 replies, 6 voices, and was last updated 13 years ago by Moises Lejter.
-
AuthorPosts
-
DamonMemberI have often had my diagrams become unusuable due to internal ClassCastExceptions.
My workaround is to save constantly, close and re-open, and revert both the uml and umldi files using eclipse’s local history feature.
Please post patch or workaround, particularly which elements in the xml might be removed to allow the diagram to be opened and recovered. As I examine it, I suspect I could recover by deleting all my routers?
I beleive this is the error, though, frankly, MyEclipse logs so many errors to my errorlog it’s hard to know which one was involved in the total loss of this diagram.
!ENTRY org.topcased.modeler 4 0 2009-08-04 10:10:33.938
!MESSAGE Error
!STACK 0
java.lang.ClassCastException: org.topcased.modeler.uml.sequencediagram.edit.SequenceDiagramEditPart cannot be cast to org.topcased.modeler.edit.GraphNodeEditPart
at org.topcased.modeler.edit.GraphEdgeEditPart.getDefaultRouter(GraphEdgeEditPart.java:471)
at org.topcased.modeler.edit.GraphEdgeEditPart.getRouter(GraphEdgeEditPart.java:445)
at org.topcased.modeler.edit.GraphEdgeEditPart.refreshRouter(GraphEdgeEditPart.java:422)
at org.topcased.modeler.edit.GraphEdgeEditPart.refreshVisuals(GraphEdgeEditPart.java:610)
at org.eclipse.gef.editparts.AbstractEditPart.refresh(AbstractEditPart.java:676)
at org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh(AbstractGraphicalEditPart.java:571)
at org.eclipse.gef.editparts.AbstractConnectionEditPart.refresh(AbstractConnectionEditPart.java:221)
at org.topcased.modeler.edit.GraphEdgeEditPart.refresh(GraphEdgeEditPart.java:596)
at org.eclipse.gef.editparts.AbstractConnectionEditPart.setSource(AbstractConnectionEditPart.java:278)
at org.eclipse.gef.editparts.AbstractGraphicalEditPart.addSourceConnection(AbstractGraphicalEditPart.java:252)
at org.eclipse.gef.editparts.AbstractGraphicalEditPart.refreshSourceConnections(AbstractGraphicalEditPart.java:619)
at org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh(AbstractGraphicalEditPart.java:572)
at org.topcased.modeler.edit.BaseEditPart.refresh(BaseEditPart.java:185)
at org.eclipse.gef.editparts.AbstractEditPart.addNotify(AbstractEditPart.java:235)
at org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotify(AbstractGraphicalEditPart.java:219)
at org.eclipse.gef.editparts.AbstractEditPart.addChild(AbstractEditPart.java:198)
at org.eclipse.gef.editparts.SimpleRootEditPart.setContents(SimpleRootEditPart.java:101)
at org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents(AbstractEditPartViewer.java:601)
at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalViewer.setContents(DiagramGraphicalViewer.java:378)
at org.eclipse.gef.ui.parts.AbstractEditPartViewer.setContents(AbstractEditPartViewer.java:610)
at org.topcased.modeler.editor.Modeler.changeActiveDiagram(Modeler.java:1289)
at org.topcased.modeler.editor.NavigationManager$ChangeActiveDiagramCommand.redo(NavigationManager.java:404)
at org.topcased.modeler.editor.NavigationManager$ChangeActiveDiagramCommand.execute(NavigationManager.java:387)
at org.topcased.modeler.commands.CommandStack.execute(CommandStack.java:165)
at org.topcased.modeler.editor.NavigationManager.set(NavigationManager.java:234)
at org.topcased.modeler.editor.Modeler.setActiveDiagram(Modeler.java:1148)
at org.topcased.modeler.editor.Modeler.setActiveDiagram(Modeler.java:1114)
at org.topcased.modeler.editor.Modeler.restoreActiveDiagram(Modeler.java:1185)
at org.topcased.modeler.editor.Modeler.initializeGraphicalViewer(Modeler.java:1012)
at org.topcased.modeler.editor.Modeler.createGraphicalViewer(Modeler.java:309)
at org.eclipse.gef.ui.parts.GraphicalEditorWithPalette.createPartControl(GraphicalEditorWithPalette.java:62)
at org.topcased.modeler.editor.Modeler.createPartControl(Modeler.java:1470)
at com.genuitec.eclipse.uml2.ui.editors.MEUML2Editor.createPartControl(MEUML2Editor.java:61)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:661)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:428)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:594)
at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:306)
at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:180)
at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:270)
at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65)
at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:473)
at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1256)
at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1209)
at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1608)
at org.eclipse.ui.internal.PartStack.add(PartStack.java:499)
at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:103)
at org.eclipse.ui.internal.PartStack.add(PartStack.java:485)
at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:112)
at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:63)
at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:217)
at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:207)
at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:779)
at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:678)
at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:639)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2817)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2729)
at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2721)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2673)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2668)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2652)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2643)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:646)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:605)
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:318)
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:160)
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:228)
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:207)
at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:274)
at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:250)
at org.eclipse.jdt.internal.ui.packageview.PackageExplorerActionGroup.handleOpen(PackageExplorerActionGroup.java:363)
at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$5.open(PackageExplorerPart.java:603)
at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:880)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818)
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079)
at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1183)
at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263)
at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2384)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2200)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:490)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
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:386)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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:549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
support-shaliniMemberdamonfeldman,
Can you give some more details?
1. What are your installation details? You can get them from MyEclipse > Installation Summary > Installation Details.
2. What is the version of UML that you are using?
3. Are there any errors logged in your log file located at workspace dir > .metadata > .log?
4. Can you list out the steps in detail to replicate the error?
DamonMemberShalini,
Below is the installation details output. At one point I shifted to version 7.1 to try to resovle the issues, open the diagram, so it is possible this particular error occured on 7.1. I think the UML version is 7.5 in either case. The diagrams are UML2.
*** Date:
Thursday, August 6, 2009 10:35:11 AM EDT** System properties:
OS=WindowsXP
OS version=5.1.0
Java version=1.6.0_13*** MyEclipse details:
MyEclipse Enterprise Workbench
Version: 7.5
Build id: 7.5-20090609*** Eclipse details:
MyEclipse Enterprise WorkbenchVersion: 7.5
Build id: 7.5-20090609Eclipse Plug-in Development Environment
Version: 3.4.2.R342_v20090122-7T7U1E9imVKz-A8Vz-p_jRS
Build id: M20080703-0800Eclipse Platform
Version: 3.4.2.R342_v20090122-9I96EiWElHi8lheoJKJIvhM3JfVsYbRrgVIWL
Build id: M20090211-1700Eclipse Graphical Editing Framework GEF
Version: 3.4.2.v20090218-1145-67728084A56B4I233613552
Build id: 200809101400Eclipse RCP
Version: 3.4.200.R342_v20090122-989JESTEbig-SVaL8UJHcYBr4A63
Build id: M20090211-1700Eclipse Java Development Tools
Version: 3.4.2.r342_v20081217-7o7tEAoEEDWEm5HTrKn-svO4BbDI
Build id: M20090211-1700Eclipse startup command=-os
win32
-ws
win32
-arch
x86
-showsplash
-launcher
C:\Program Files\Genuitec\MyEclipse 7.1\myeclipse.exe
-name
Myeclipse
–launcher.library
C:\Program Files\Genuitec\MyEclipse 7.1\../Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731\eclipse_1115.dll
-startup
C:\Program Files\Genuitec\MyEclipse 7.1\../Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20081125.jar
-exitdata
288_3fc4
-clean
-configuration
C:\Program Files\Genuitec\MyEclipse 7.1\configuration
-clean
-vm
C:\Program Files\Genuitec\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\bin\javaw.exe
Loyal WaterMemberdamonfeldman,
You installation looks good to me. Do you face this issue with one particular UMR or all the UMR’s? If you switch to a new worksapce, create a new diagram and work with it for a while, does the problem persist in the new workspace as well?
Brian FernandesModeratorDamon,
I was able to locate a point in the code where the CCE is occurring from your stack trace, thank you for the detailed initial report.
However, I was unable to replicate this condition while using the tool. I tried creating diagrams using all sorts of UML2 Sequence diagram components but was unable to replicate the problem.
I have a few questions:
1) I assume you notice the problem only when you attempt to re-open a saved diagram? i.e. you don’t notice it while working on a diagram? Does the editor suddenly stop responding to input or anything of that sort?2) Do you notice the error occurring after you create a specific type of connection / node in your sequence diagram?
Anything you can tell us which will help reproduce the problem here would be very useful. Sorry for the inconvenience caused.
Benny YihParticipantI am also get uml2 files which fail to re-open while drawing diagrams in Eclipse 8.5M2.
Does anyone remember why “validation” is turned off for these .uml and .umldi files while they are dynamically updated during diagram changes ? 😎
support-shaliniMemberbenny.yih,
Are there any errors logged in the log file located at workspace dir > .metadata > .log when you re-open the files?
Please clear your log file, save it and then open the .uml file to get relevant errors.Does anyone remember why “validation” is turned off for these .uml and .umldi files while they are dynamically updated during diagram changes ? 😎
Can you clarify what validation you are referring to?
Moises LejterMemberI’ve ran into this issue (being unable to reopen UML2 diagrams in MyEclipse 8.6.1) myself. It seems to me the problem comes up when one creates the UML2 diagrams in a subdirectory of the project (or moves them there). When the UML diagrams are in a subdirectory, MyEclipse seems to generate URL references to the diagram files that assume MyEclipse will need to navigate from the directory where one file is to the project root where the other file is expected to be – which then leads to file not found errors.
I’ve fixed this by opening the XML files as plain text, then removing the path navigation prefix from those URLS within the diagram files (which I seem to remember I have to do again, each time I add a new diagram to the model).Moises
-
AuthorPosts