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

Type checking in the modeler

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 3.0M5
    • 3.0M6
    • Modeler
    • None

    Description

      Some random modeler issues:

      1. When typing some bogus string in the root dropdown of the SelectQuery, I am getting an exception below.
      I wonder why the query root is editable at all? Was there a reason we did it?

      Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: org.apache.cayenne.query.SelectQuery: "setRoot(..)" takes a DataMap, String, ObjEntity, DbEntity, Procedure, or Class. It was passed a null
      at org.apache.cayenne.query.AbstractQuery.setRoot(AbstractQuery.java:100)
      at org.apache.cayenne.modeler.editor.SelectQueryMainTab$RootSelectionHandler.actionPerformed(SelectQueryMainTab.java:348)
      at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1197)
      at javax.swing.JComboBox.actionPerformed(JComboBox.java:1254)
      at javax.swing.JTextField.fireActionPerformed(JTextField.java:487)
      at javax.swing.JTextField.postActionEvent(JTextField.java:668)
      at javax.swing.JTextField$NotifyAction.actionPerformed(JTextField.java:783)
      at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1576)
      at javax.swing.JComponent.processKeyBinding(JComponent.java:2772)
      at javax.swing.JComponent.processKeyBindings(JComponent.java:2807)
      at javax.swing.JComponent.processKeyEvent(JComponent.java:2735)
      at java.awt.Component.processEvent(Component.java:5379)
      at java.awt.Container.processEvent(Container.java:2010)
      at java.awt.Component.dispatchEventImpl(Component.java:4068)
      at java.awt.Container.dispatchEventImpl(Container.java:2068)
      at java.awt.Component.dispatchEvent(Component.java:3903)
      at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1826)

      2. I can't reproduce this now, but the error happened when I tried typing a qulaifier for the SelectQuery without an entity root (or any root)

      Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: org.apache.cayenne.map.DataMap
      at org.apache.cayenne.modeler.editor.SelectQueryMainTab.createQualifier(SelectQueryMainTab.java:248)
      at org.apache.cayenne.modeler.editor.SelectQueryMainTab.setQueryQualifier(SelectQueryMainTab.java:215)
      at org.apache.cayenne.modeler.editor.SelectQueryMainTab$2.updateModel(SelectQueryMainTab.java:101)
      at org.apache.cayenne.modeler.util.TextAdapter.updateModel(TextAdapter.java:143)
      at org.apache.cayenne.modeler.util.TextAdapter$2.verify(TextAdapter.java:84)
      at javax.swing.InputVerifier.shouldYieldFocus(InputVerifier.java:114)
      at javax.swing.JComponent.runInputVerifier(JComponent.java:1400)
      at javax.swing.JComponent.requestFocus(JComponent.java:1452)
      at java.awt.Component.nextFocusHelper(Component.java:6819)
      at java.awt.Container.nextFocusHelper(Container.java:3113)
      at java.awt.Component.doAutoTransfer(Component.java:6732)
      at java.awt.Component.autoTransferFocus(Component.java:6724)
      at java.awt.Component.autoTransferFocus(Component.java:6702)
      at java.awt.Component.hide(Component.java:1334)
      at java.awt.Component.show(Component.java:1304)
      at java.awt.Component.setVisible(Component.java:1255)
      at javax.swing.JComponent.setVisible(JComponent.java:2544)
      at apple.laf.CUIAquaTabbedPaneCopyFromBasic.setVisibleComponent(CUIAquaTabbedPaneCopyFromBasic.java:1310)
      at apple.laf.CUIAquaTabbedPaneCopyFromBasic$TabbedPaneLayout.layoutContainer(CUIAquaTabbedPaneCopyFromBasic.java:2111)
      at java.awt.Container.layout(Container.java:1401)
      at java.awt.Container.doLayout(Container.java:1390)
      at java.awt.Container.validateTree(Container.java:1473)
      at java.awt.Container.validateTree(Container.java:1480)
      at java.awt.Container.validateTree(Container.java:1480)
      at java.awt.Container.validate(Container.java:1448)
      at javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:379)
      at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:113)
      at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)

      Attachments

        Activity

          People

            antidote Andrey Razumovsky
            andrus Andrus Adamchik
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: