cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Zeigler (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CAY-1196) ClassNotFoundException in modeler
Date Tue, 17 Mar 2009 06:03:17 GMT

    [ https://issues.apache.org/cayenne/browse/CAY-1196?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13284#action_13284
] 

Robert Zeigler commented on CAY-1196:
-------------------------------------

Duplicated on mac. 
Key to duplication is to set the db attribute field to null, as well, which forces the modeler
to guess the db type based on the java type.
Note that the gui updating on mac succeeds up to the failure; all attributes after teh failure
will fail to render when the panel is fully refreshed (eg: after switching tabs).

> ClassNotFoundException in modeler
> ---------------------------------
>
>                 Key: CAY-1196
>                 URL: https://issues.apache.org/cayenne/browse/CAY-1196
>             Project: Cayenne
>          Issue Type: Bug
>          Components: CayenneModeler GUI
>    Affects Versions: 3.0M5
>         Environment: Ubuntu Linux
>            Reporter: Michael Shea
>            Assignee: Robert Zeigler
>            Priority: Minor
>
> To duplicate:
> 1. Open an existing project with the Cayenne Modeler.
> 2. Select an existing attribute on an existing object entity. Delete the Java Type field.
> 3. Navigate to some other object entity.
> 4. Go back to the original one and click the "attributes" tab. You will see that the
GUI doesn't get updated when you switch to that tab.
> It looks like the modeler is calling Class.forName( "" ).
> I have managed to work around this by manually editing the map.xml file and filling in
a valid java classname for the attribute in question.
> The following stacktrace is printed to the console:
> Exception in thread "AWT-EventQueue-0" org.apache.cayenne.CayenneRuntimeException: [v.3.0M5
Dec 09 2008 00:19:19] Failed to load class for name '':                                  
                                                 
>         at org.apache.cayenne.map.ObjAttribute.getJavaClass(ObjAttribute.java:79)   
                                                                                         
                                                        
>         at org.apache.cayenne.modeler.editor.ObjAttributeTableModel.getValueAt(ObjAttributeTableModel.java:174)
                                                                                         
                             
>         at javax.swing.JTable.getValueAt(JTable.java:2695)                          
                                                                                         
                                                        
>         at javax.swing.JTable.prepareRenderer(JTable.java:5712)
>         at javax.swing.plaf.basic.BasicTableUI.paintCell(BasicTableUI.java:2075)
>         at javax.swing.plaf.basic.BasicTableUI.paintCells(BasicTableUI.java:1977)
>         at javax.swing.plaf.basic.BasicTableUI.paint(BasicTableUI.java:1773)
>         at javax.swing.plaf.ComponentUI.update(ComponentUI.java:143)
>         at javax.swing.JComponent.paintComponent(JComponent.java:763)
>         at javax.swing.JComponent.paint(JComponent.java:1027)
>         at javax.swing.JComponent.paintChildren(JComponent.java:864)
>         at javax.swing.JComponent.paint(JComponent.java:1036)
>         at javax.swing.JViewport.paint(JViewport.java:747)
>         at javax.swing.JComponent.paintChildren(JComponent.java:864)
>         at javax.swing.JComponent.paint(JComponent.java:1036)
>         at javax.swing.JComponent.paintToOffscreen(JComponent.java:5122)
>         at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:277)
>         at javax.swing.RepaintManager.paint(RepaintManager.java:1217)
>         at javax.swing.JComponent._paintImmediately(JComponent.java:5070)
>         at javax.swing.JComponent.paintImmediately(JComponent.java:4880)
>         at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:803)
>         at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:714)
>         at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:694)
>         at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
>         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
>         at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>         at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>         at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> Caused by: java.lang.ClassNotFoundException:
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:247)
>         at org.apache.cayenne.util.Util.getJavaClass(Util.java:588)
>         at org.apache.cayenne.map.ObjAttribute.getJavaClass(ObjAttribute.java:76)
>         ... 31 more

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


Mime
View raw message