facebook

Failing generating UML2 model from large code, large class

  1. MyEclipse Archived
  2.  > 
  3. UML Development
Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #316999 Reply

    Carlos Scheidecker
    Participant

    Hello,

    I am trying to generate UML2 models from code using the drag and drop feature.

    It works, but when the code (class) is too big I have issues with it.

    I’ve tried to increase the heap memory to 8GB and I still have the
    same issues with that part of the code that is big.

    I’ve googled and I saw some people with the same errors with the JFace
    plugin. Still I could not solve it.

    Here’s the error stack for it:

    eclipse.buildId=unknown
    java.version=1.6.0_13
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
    Command-line arguments: -os linux -ws gtk -arch x86_64

    This is a continuation of log file
    /home/antunes/workspace.Extractor/.metadata/.bak_0.log
    Created Time: 2011-05-24 15:31:21.546

    Error
    Tue May 24 15:44:00 MDT 2011
    Problems occurred when invoking code from plug-in: “org.eclipse.jface”.

    org.eclipse.emf.common.util.BasicEList$BasicIndexOutOfBoundsException:
    index=1, size=1
    at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:352)
    at org.topcased.modeler.uml.importer.dnd.GraphEdgeCreationFactory.newAssociationEdge(GraphEdgeCreationFactory.java:105)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createAssociationGraphEdge(UMLDiagramGenerator.java:692)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createAssociation(UMLDiagramGenerator.java:610)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:581)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:585)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:585)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:585)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:585)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:585)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.createConnections(UMLDiagramGenerator.java:585)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.handleGraphEdges(UMLDiagramGenerator.java:459)
    at org.topcased.modeler.uml.importer.dnd.UMLDiagramGenerator.generateUMLDiagram(UMLDiagramGenerator.java:123)
    at org.topcased.modeler.uml.importer.dnd.JavaClassFileTransferDropTargetListener.handleDrop(JavaClassFileTransferDropTargetListener.java:123)
    at org.eclipse.gef.dnd.AbstractTransferDropTargetListener.drop(AbstractTransferDropTargetListener.java:183)
    at org.eclipse.jface.util.DelegatingDropAdapter$3.run(DelegatingDropAdapter.java:211)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    at org.eclipse.jface.util.DelegatingDropAdapter.drop(DelegatingDropAdapter.java:209)
    at org.eclipse.swt.dnd.DNDListener.handleEvent(DNDListener.java:90)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1282)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1267)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1061)
    at org.eclipse.swt.dnd.DropTarget.drag_data_received(DropTarget.java:371)
    at org.eclipse.swt.dnd.DropTarget.Drag_Data_Received(DropTarget.java:251)
    at org.eclipse.swt.internal.gtk.OS._gtk_drag_get_data(Native Method)
    at org.eclipse.swt.internal.gtk.OS.gtk_drag_get_data(OS.java:6448)
    at org.eclipse.swt.dnd.DropTarget.drag_drop(DropTarget.java:416)
    at org.eclipse.swt.dnd.DropTarget.Drag_Drop(DropTarget.java:258)
    at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
    at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:8168)
    at org.eclipse.swt.widgets.Display.eventProc(Display.java:1238)
    at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
    at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2229)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3159)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
    at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
    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:369)
    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:619)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1383)

    Session data:

    eclipse.buildId=unknown
    java.version=1.6.0_13
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
    Command-line arguments: -os linux -ws gtk -arch x86_64

    #317002 Reply

    support-swapna
    Moderator

    scheidecker,

    Sorry that you ran into this issue.

    Can you give some more information to understand the issue better ?

    1) Can you share your build id from Help > About MyEclipse Enterprise Workbench > Build id? Paste it here.

    2) How big is your class file ?

    3) Alternatively I suggest you use the UML2 Reverse Engineering feature for generating the UML2 diagrams from code. Right click on the project > MyEclipse > UML Class Diagram from Java.

    Please check this link on the same : http://www.myeclipseide.com/documentation/quickstarts/uml2_overview/

    Let me know how this works for you.

    #317025 Reply

    Carlos Scheidecker
    Participant

    Swapna,

    1) Build id: Version: 9.0
    Build id: 9.0-20110318

    2) The class file has 12.000 lines and was generated by a lexer. It has many variables. There are 2 of these files.

    Thanks.

    #317026 Reply

    Carlos Scheidecker
    Participant

    Swapna,

    MyEclipse 9 menus and interface for UML 2 is quite different than the one on the instructions. For once, I do not have the menu MyEclipse > UML Class Diagram from Java. Tried switching perspectives, right clicking on the UML2 item and nothing. The only I was able to find out how to reverse engineer it was by dragging the source folder and then it crashes.

    #317047 Reply

    support-swapna
    Moderator

    scheidecker,

    Switch to MyEclipse UML2 perspective.Right click on the project > MyEclipse > Generate UML2 class diagram.
    Attached is the screenshot for your reference.

    Attachments:
    You must be logged in to view attached files.
    #317048 Reply

    scheidecker,
    I think the context menu action has been changed to “Generate UML2 Class diagram”. You will find it in the MyEclipse context menu (Select project->Right click->MyEclipse-> Generate UML2 Class Diagram…). I have used it on larger projects (similar to one you have) and Class diagram generation works pretty well.

    Regards,
    NB

Viewing 6 posts - 1 through 6 (of 6 total)
Reply To: Failing generating UML2 model from large code, large class

You must be logged in to post in the forum log in