NullPointerException in LRUMap.reuseMapping (was DataRowStore.processUpdatedSnapshots)

From: Lothar Krenzien (lkrenzie..eb.de)
Date: Fri Jun 09 2006 - 07:26:48 EDT

  • Next message: Lothar Krenzien: "FaultFailureException"

    Hi there ,

    I'm using the recent Cayenne version with Tomcat 5.5 and Java 5. Since a few days I get very often a NullPointerException from cayenne. Analysing the stack trace it seems that the exception is thrown by Apache's commons collection class LRUMap. I've found a possible solution at BugZilla:
    http://issues.apache.org/bugzilla/show_bug.cgi?id=32573

    There it is saied that it could be a synchronising problem. And I'm getting the exeption only after a while the server is running and lots of users are connected. Would it be possible to try the suggestions from BugZilla? There's another post of the same excption in this group a few days ago. So it seems to be a very serious problem.
    http://www.objectstyle.org/cayenne/lists/cayenne-user/2006/06/0017.html

    What I've just realized that cayenne comes with it's own copy of common collections packed in the cayenne.jar. For me that seems not be very usefull. Instead of it I would prefer a link on the cayenne download page. That way I could independently update cayenne and/ or commons collection.

    Here's the full stack trace:
    java.lang.NullPointerException
    at org.apache.commons.collections.map.LRUMap.reuseMapping(LRUMap.java:272)
    at org.apache.commons.collections.map.LRUMap.addMapping(LRUMap.java:243)
    at org.apache.commons.collections.map.AbstractHashedMap.put(AbstractHashedMap.java:282)
    at org.objectstyle.cayenne.access.DataRowStore.processUpdatedSnapshots(DataRowStore.java:612)
    at org.objectstyle.cayenne.access.DataRowStore.processSnapshotChanges(DataRowStore.java:571)
    at org.objectstyle.cayenne.access.DataRowStore.snapshotsUpdatedForObjects(DataRowStore.java:313)
    at org.objectstyle.cayenne.access.ObjectResolver.objectsFromDataRows(ObjectResolver.java:159)
    at org.objectstyle.cayenne.access.ObjectResolver.synchronizedObjectsFromDataRows(ObjectResolver.java:134)
    at org.objectstyle.cayenne.access.DataDomainQueryAction.interceptObjectConversion(DataDomainQueryAction.java:373)
    at org.objectstyle.cayenne.access.DataDomainQueryAction.execute(DataDomainQueryAction.java:151)
    at org.objectstyle.cayenne.access.DataDomain.onQuery(DataDomain.java:765)
    at org.objectstyle.cayenne.util.ObjectContextQueryAction.runQuery(ObjectContextQueryAction.java:253)
    at org.objectstyle.cayenne.access.DataContextQueryAction.execute(DataContextQueryAction.java:90)
    at org.objectstyle.cayenne.access.DataContext.onQuery(DataContext.java:1422)
    at org.objectstyle.cayenne.access.DataContext.performQuery(DataContext.java:1411)
    at com.sunreader.sr2.back.dao.ProductDAO.isLoggerAlreadyAvailable(Unknown Source)

    Thanks for any help.

    Lothar
    ______________________________________________________________
    Verschicken Sie romantische, coole und witzige Bilder per SMS!
    Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193



    This archive was generated by hypermail 2.0.0 : Fri Jun 09 2006 - 07:27:15 EDT