Type checking in the modeler
----------------------------

                 Key: CAY-1166
                 URL: https://issues.apache.org/cayenne/browse/CAY-1166
             Project: Cayenne
          Issue Type: Bug
          Components: CayenneModeler GUI
    Affects Versions: 3.0M5
            Reporter: Andrus Adamchik
            Assignee: Andrus Adamchik
            Priority: Minor


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)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to