Unexpected exception received while running Sketch It!: java.lang.ClassCastException

Issue #45 resolved
Former user created an issue

Some diagrams get generated, but then an exception is raised.

The project is not small (Maven project with many modules/submodules) and is a Java/Groovy mix (although mostly Java).

Call stack:
org.pmesmeur.sketchit.diagram.clazz.ClassDiagramGenerator$RelationshipsGenerator.classIsFromJavaLangPackage(ClassDiagramGenerator.java:475)
org.pmesmeur.sketchit.diagram.clazz.ClassDiagramGenerator$RelationshipsGenerator.generateClassInheritence(ClassDiagramGenerator.java:466)
org.pmesmeur.sketchit.diagram.clazz.ClassDiagramGenerator$RelationshipsGenerator.generate(ClassDiagramGenerator.java:442)
org.pmesmeur.sketchit.diagram.clazz.ClassDiagramGenerator.generate(ClassDiagramGenerator.java:165)
org.pmesmeur.sketchit.diagram.UmlModuleClassDiagram.generateDiagram(UmlModuleClassDiagram.java:46)
org.pmesmeur.sketchit.diagram.UmlDiagram.generateDiagram(UmlDiagram.java:56)
org.pmesmeur.sketchit.diagram.UmlDiagram.generate(UmlDiagram.java:35)
org.pmesmeur.sketchit.diagram.UmlDiagramsGenerator.generateModuleClassDiagram(UmlDiagramsGenerator.java:44)
org.pmesmeur.sketchit.diagram.UmlDiagramsGenerator.generateClassDiagrams(UmlDiagramsGenerator.java:35)
org.pmesmeur.sketchit.SketchIt.generatePlantUmlDiagram(SketchIt.java:75)
org.pmesmeur.sketchit.SketchIt.generatePlantUmlDiagramWithExceptionHandling(SketchIt.java:61)
org.pmesmeur.sketchit.SketchIt.generatePlantUmlModel(SketchIt.java:53)
org.pmesmeur.sketchit.SketchIt.actionBody(SketchIt.java:45)
org.pmesmeur.sketchit.SketchIt.access$000(SketchIt.java:12)
org.pmesmeur.sketchit.SketchIt$1.run(SketchIt.java:32)
com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:994)
org.pmesmeur.sketchit.SketchIt.runInsideAnIntellijWriteAction(SketchIt.java:30)
org.pmesmeur.sketchit.SketchIt.actionPerformed(SketchIt.java:24)
com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:265)
com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:282)
com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:292)
com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:265)
com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:107)
com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:282)
java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:111)
com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:82)
com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:106)
com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:115)
com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:121)
com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:525)
com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:36)
com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:547)
java.desktop/java.awt.Component.processMouseEvent(Component.java:6651)
java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
java.desktop/java.awt.Component.processEvent(Component.java:6416)
java.desktop/java.awt.Container.processEvent(Container.java:2263)
java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5026)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4858)
java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4858)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.base/java.security.AccessController.doPrivileged(Native Method)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
java.base/java.security.AccessController.doPrivileged(Native Method)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:873)
com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:818)
com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:461)
com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:704)
com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:460)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Comments (2)

  1. Alessio Gaeta

    Just adding an excerpt from Idea logs (only the relevant part):

    [...]
    2019-08-13 15:26:54,571 [ 284138]   INFO - am.clazz.ClassDiagramGenerator -   - generating inheritance of class *** for class *** 
    2019-08-13 15:26:54,573 [ 284140]   INFO - am.clazz.ClassDiagramGenerator -   - generating association from class *** to class *** 
    2019-08-13 15:26:54,573 [ 284140]   INFO - am.clazz.ClassDiagramGenerator - * generating relationships for class: *** 
    2019-08-13 15:26:54,576 [ 284143]   INFO - am.clazz.ClassDiagramGenerator -   - generating inheritance of class *** for class *** 
    2019-08-13 15:26:54,584 [ 284151]   INFO - am.clazz.ClassDiagramGenerator - * generating relationships for class: *** 
    2019-08-13 15:26:54,587 [ 284154]   INFO - am.clazz.ClassDiagramGenerator -   - generating inheritance of class *** for class *** 
    2019-08-13 15:26:54,594 [ 284161]   INFO - am.clazz.ClassDiagramGenerator - * generating relationships for class: *** 
    2019-08-13 15:26:54,666 [ 284233]  ERROR - n.impl.NoSwingUnderWriteAction - AWT events are not allowed inside write action: java.awt.event.InvocationEvent[INVOCATION_DEFAULT,runnable=LaterInvocator.FlushQueue,notifier=null,catchExceptions=false,when=1565702813405] on sun.awt.X11.XToolkit@470aa8e1 
    java.lang.Throwable: AWT events are not allowed inside write action: java.awt.event.InvocationEvent[INVOCATION_DEFAULT,runnable=LaterInvocator.FlushQueue,notifier=null,catchExceptions=false,when=1565702813405] on sun.awt.X11.XToolkit@470aa8e1
        at com.intellij.openapi.diagnostic.Logger.error(Logger.java:145)
        at com.intellij.openapi.application.impl.NoSwingUnderWriteAction.lambda$watchForEvents$0(NoSwingUnderWriteAction.java:22)
        at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:476)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
        at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
        at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
        at java.desktop/java.awt.Dialog.show(Dialog.java:1063)
        at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:707)
        at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:432)
        at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1685)
        at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1644)
        at com.intellij.openapi.ui.messages.MessageDialog.show(MessageDialog.java:177)
        at com.intellij.ui.messages.MessagesServiceImpl.showMessageDialog(MessagesServiceImpl.java:70)
        at com.intellij.openapi.ui.Messages.showDialog(Messages.java:219)
        at com.intellij.openapi.ui.Messages.showDialog(Messages.java:178)
        at com.intellij.openapi.ui.Messages.showErrorDialog(Messages.java:791)
        at org.pmesmeur.sketchit.ui.ExceptionDialog.show(ExceptionDialog.java:13)
        at org.pmesmeur.sketchit.SketchIt.generatePlantUmlDiagramWithExceptionHandling(SketchIt.java:63)
        at org.pmesmeur.sketchit.SketchIt.generatePlantUmlModel(SketchIt.java:53)
        at org.pmesmeur.sketchit.SketchIt.actionBody(SketchIt.java:45)
        at org.pmesmeur.sketchit.SketchIt.access$000(SketchIt.java:12)
        at org.pmesmeur.sketchit.SketchIt$1.run(SketchIt.java:32)
        at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:994)
        at org.pmesmeur.sketchit.SketchIt.runInsideAnIntellijWriteAction(SketchIt.java:30)
        at org.pmesmeur.sketchit.SketchIt.actionPerformed(SketchIt.java:24)
        at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:265)
        at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:282)
        at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:292)
        at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:265)
        at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:107)
        at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:282)
        at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
        at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:111)
        at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:82)
        at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:106)
        at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:115)
        at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:121)
        at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
        at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:525)
        at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:36)
        at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:547)
        at java.desktop/java.awt.Component.processMouseEvent(Component.java:6651)
        at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
        at java.desktop/java.awt.Component.processEvent(Component.java:6416)
        at java.desktop/java.awt.Container.processEvent(Container.java:2263)
        at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5026)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4858)
        at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
        at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
        at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
        at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4858)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
        at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:873)
        at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:818)
        at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:461)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:704)
        at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:460)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
    2019-08-13 15:26:54,668 [ 284235]  ERROR - n.impl.NoSwingUnderWriteAction - IntelliJ IDEA 2019.2  Build #IC-192.5728.98 
    2019-08-13 15:26:54,668 [ 284235]  ERROR - n.impl.NoSwingUnderWriteAction - JDK: 11.0.3; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o 
    2019-08-13 15:26:54,668 [ 284235]  ERROR - n.impl.NoSwingUnderWriteAction - OS: Linux 
    2019-08-13 15:26:54,674 [ 284241]  ERROR - n.impl.NoSwingUnderWriteAction - Plugin to blame: Sketch It! version: 0.06.02 
    2019-08-13 15:26:54,674 [ 284241]  ERROR - n.impl.NoSwingUnderWriteAction - Last Action: Myplugin.Textboxes 
    2019-08-13 15:27:15,969 [ 305536]   INFO - org.pmesmeur.sketchit.SketchIt - Ending generation of PlantUML model for project basis-project 
    [...]
    
  2. Log in to comment