hi armin, edson,

it looks like the number of pk-fields and the number of columns in the indirection table pointing to the m-side class are not the same.

could you please send me the testcase ?

jakob

Armin Waibel wrote:

Hi Edson,

I have the same problem here is my stack trace

java.lang.ArrayIndexOutOfBoundsException: 1
at org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.buildPrefetchCriteriaMultipleKeys(MtoNCollectionPrefetcher.java:338)


at org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.buildPrefetchCriteria(MtoNCollectionPrefetcher.java:259)

at org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.buildPrefetchQuery(MtoNCollectionPrefetcher.java:115)

at org.apache.ojb.broker.accesslayer.CollectionPrefetcher.buildPrefetchQueries(CollectionPrefetcher.java:93)


seems the both are the same. I implemented a test case for the problem, but I'm currently working on the auto-xxx stuff so I can't send much time for that - put this on my imaginary todo-list for 1.0 ;-)


regards,
Armin


Edson Carlos Ericksson Richter wrote:


This bug is driving me crazy... Someone could point me what changed from rc5
to 1.0 in this method (so I can at least fix locally)?


The problem is a M:N mapping using composite pk pointing the M bean, and 1
field pk pointing to the N bean.
The stack trace is:


java.lang.ArrayIndexOutOfBoundsException: 1
at
org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.buildPrefetchCrit


eriaMultipleKeys(MtoNCollectionPrefetcher.java:338)
at
org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.buildPrefetchCrit


eria(MtoNCollectionPrefetcher.java:259)
at
org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.buildPrefetchQuer


y(MtoNCollectionPrefetcher.java:115)
at
org.apache.ojb.broker.accesslayer.CollectionPrefetcher.buildPrefetchQueries(


CollectionPrefetcher.java:93)
at
org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.prefetchRelations


hip(MtoNCollectionPrefetcher.java:68)
at
org.apache.ojb.broker.core.QueryReferenceBroker.performRetrievalTasks(QueryR


eferenceBroker.java:277)
at
org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryRe


ferenceBroker.java:146)
at
org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryRe


ferenceBroker.java:203)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(Persis


tenceBrokerImpl.java:1046)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(


DelegatingPersistenceBroker.java:321)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(


DelegatingPersistenceBroker.java:321)
at
org.apache.ojb.broker.accesslayer.CollectionProxy.loadData(CollectionProxy.j


ava:109)
at
org.apache.ojb.broker.accesslayer.ListProxy.loadData(ListProxy.java:148)
at
org.apache.ojb.broker.accesslayer.CollectionProxy.getData(CollectionProxy.ja


va:362)
at
org.apache.ojb.broker.accesslayer.ListProxy.getListData(ListProxy.java:140)


at
org.apache.ojb.broker.accesslayer.ListProxy.get(ListProxy.java:71)
at
br.com.mgr.dialogs.ListBasedListModel.getElementAt(ListBasedListModel.java:6


3)
at
javax.swing.plaf.basic.BasicListUI.updateLayoutState(BasicListUI.java:1147)


at
javax.swing.plaf.basic.BasicListUI.maybeUpdateLayoutState(BasicListUI.java:1


098)
at
javax.swing.plaf.basic.BasicListUI.getPreferredSize(BasicListUI.java:281)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1275)
at
javax.swing.JList.getPreferredScrollableViewportSize(JList.java:1913)
at
javax.swing.ViewportLayout.preferredLayoutSize(ViewportLayout.java:72)
at java.awt.Container.preferredSize(Container.java:1178)
at java.awt.Container.getPreferredSize(Container.java:1162)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1277)
at
javax.swing.ScrollPaneLayout.preferredLayoutSize(ScrollPaneLayout.java:475)


at java.awt.Container.preferredSize(Container.java:1178)
at java.awt.Container.getPreferredSize(Container.java:1162)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1277)
at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:572)
at java.awt.Container.preferredSize(Container.java:1178)
at java.awt.Container.getPreferredSize(Container.java:1162)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1277)
at
javax.swing.plaf.basic.BasicTabbedPaneUI$TabbedPaneLayout.calculateSize(Basi


cTabbedPaneUI.java:2001)
at
javax.swing.plaf.basic.BasicTabbedPaneUI$TabbedPaneLayout.preferredLayoutSiz


e(BasicTabbedPaneUI.java:1975)
at java.awt.Container.preferredSize(Container.java:1178)
at java.awt.Container.getPreferredSize(Container.java:1162)
at javax.swing.JComponent.getPreferredSize(JComponent.java:1277)
at java.awt.GridBagLayout.GetLayoutInfo(GridBagLayout.java:892)
at java.awt.GridBagLayout.getLayoutInfo(GridBagLayout.java:806)
at java.awt.GridBagLayout.ArrangeGrid(GridBagLayout.java:1374)
at java.awt.GridBagLayout.arrangeGrid(GridBagLayout.java:1337)
at java.awt.GridBagLayout.layoutContainer(GridBagLayout.java:706)
at java.awt.Container.layout(Container.java:1020)
at java.awt.Container.doLayout(Container.java:1010)
at java.awt.Container.validateTree(Container.java:1092)
at java.awt.Container.validateTree(Container.java:1099)
at java.awt.Container.validateTree(Container.java:1099)
at java.awt.Container.validateTree(Container.java:1099)
at java.awt.Container.validate(Container.java:1067)
at
javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:353


)
at
javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQu


eueUtilities.java:116)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja


va:201)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java


:151)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)



Thanks,

Edson Richter



---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.637 / Virus Database: 408 - Release Date: 20/3/2004


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to