Re: NullPointerException only after first call to batchFetchRelationship

Kaj Hejer <[email protected]> Sun, 14 Dec 2003 18:08:10 +0100
Newsgroups gmane.comp.web.webobjects.eof
Message-ID <p06020405bc0234f7bfa5@[10.29.0.58]>
At 08:57 -0400 17-08-03, Lenny Marks wrote:
>I have a direct action to render all information for a specified
>'Manuscript' in our database. The rendering of this page traces deep into
>the manuscript's relationships and was slow so I was attempting to use
>EODatabaseContext.batchFetchRelationship to limit the hits to the
>database. I added a method batchFetchManuscriptEvents(the root of the deep
>relationships) to my Manuscript EOEnterpriseObject class. I was hoping
>that the application could call this in anticipation of its particular
>display needs. The method would batchFetch all the relationships so that
>by the time the WOComponent was generating its response, all the
>relationships would have already been faulted. This actually worked, but
>only the first time the method is invoked on a Manuscript instance within
>a single EOF stack. The first time I access the direct action for a
>manuscript, it works, but if I hit reload I get the exception below.
>
>Any clues would be greatly appreciated!
>
>-Lenny Marks
>
><ManView>[2003-08-17 07:49:16 EDT] <Thread-6>
>java.lang.NullPointerException
>         at
>com.webobjects.eocontrol._EOMutableKnownKeyDictionary.<init>(_EOMutableKnownKeyDictionary.java:90)
>         at
>com.webobjects.eoaccess.EORelationship._foreignKeyForSourceRow(EORelationship.java:1094)




Hi!

I now saw the same exception when using prefetching.

The stacktrace and the method where I get this exception can be found 
at http://folk.uio.no/kajh/tmp/wo20031214.txt

Has anybody else here seen this?

The ec I use here is a childEC of session.defaulteditingContext and 
this childEC has been locked.

I have only managed to reproduced this issue two times while testing 
this application for about an hour, so it seems that it does not 
appear so very often.


-Kaj :)