Uploaded image for project: 'Cayenne'
  1. Cayenne
  2. CAY-2439

Error deleting dbEntity when show only dbEntities filter is set

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 4.1.M2
    • Fix Version/s: 4.1.M2
    • Component/s: Modeler
    • Labels:
      None

      Description

      1. Import DB
      2. Set filter to show dbEntities only
      3. Select any dbEntity and click Delete button

      -> error appears

      CayenneModeler Info
      Version: 4.1.M2-SNAPSHOT
      Build Date: May 08 2018 12:49:54
      Exception: 
      =================================
      java.lang.ArrayIndexOutOfBoundsException: 10 >= 7
          at java.util.Vector.elementAt(Vector.java:477)
          at javax.swing.tree.DefaultMutableTreeNode.getChildAt(DefaultMutableTreeNode.java:245)
          at javax.swing.tree.VariableHeightLayoutCache.treeNodesRemoved(VariableHeightLayoutCache.java:562)
          at javax.swing.plaf.basic.BasicTreeUI$Handler.treeNodesRemoved(BasicTreeUI.java:3903)
          at javax.swing.tree.DefaultTreeModel.fireTreeNodesRemoved(DefaultTreeModel.java:548)
          at javax.swing.tree.DefaultTreeModel.nodesWereRemoved(DefaultTreeModel.java:328)
          at javax.swing.tree.DefaultTreeModel.removeNodeFromParent(DefaultTreeModel.java:262)
          at org.apache.cayenne.modeler.ProjectTreeView.removeNode(ProjectTreeView.java:799)
          at org.apache.cayenne.modeler.ProjectTreeView.removeNode(ProjectTreeView.java:851)
          at org.apache.cayenne.modeler.ProjectTreeView.entityRemoved(ProjectTreeView.java:751)
          at org.apache.cayenne.modeler.ProjectTreeView.dbEntityRemoved(ProjectTreeView.java:689)
          at org.apache.cayenne.modeler.ProjectController.fireDbEntityEvent(ProjectController.java:961)
          at org.apache.cayenne.modeler.action.RemoveAction.removeDbEntity(RemoveAction.java:391)
          at org.apache.cayenne.modeler.action.RemoveAction.performAction(RemoveAction.java:142)
          at org.apache.cayenne.modeler.action.RemoveAction.performAction(RemoveAction.java:117)
          at org.apache.cayenne.modeler.util.CayenneAction.actionPerformed(CayenneAction.java:171)
          at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
          at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
          at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
          at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
          at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
          at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
          at java.awt.Component.processMouseEvent(Component.java:6533)
          at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
          at java.awt.Component.processEvent(Component.java:6298)
          at java.awt.Container.processEvent(Container.java:2238)
          at java.awt.Component.dispatchEventImpl(Component.java:4889)
          at java.awt.Container.dispatchEventImpl(Container.java:2296)
          at java.awt.Component.dispatchEvent(Component.java:4711)
          at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4897)
          at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4534)
          at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4475)
          at java.awt.Container.dispatchEventImpl(Container.java:2282)
          at java.awt.Window.dispatchEventImpl(Window.java:2746)
          at java.awt.Component.dispatchEvent(Component.java:4711)
          at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
          at java.awt.EventQueue.access$500(EventQueue.java:97)
          at java.awt.EventQueue$3.run(EventQueue.java:709)
          at java.awt.EventQueue$3.run(EventQueue.java:703)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
          at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
          at java.awt.EventQueue$4.run(EventQueue.java:733)
          at java.awt.EventQueue$4.run(EventQueue.java:731)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
          at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
          at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
          at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
          at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
          at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
          at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
          at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

      note: same for Procedure, Embeddable, Query.

      OK for objEntities

        Attachments

          Activity

            People

            • Assignee:
              ntimofeev Nikita Timofeev
              Reporter:
              abenko ana benko
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: