cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <and...@objectstyle.org>
Subject Re: DataRowStore.sendUpdateNotification NullPointerException
Date Mon, 08 Oct 2007 08:11:58 GMT
Hi Emilian,

I agree with your general point about the obscure nature of this  
behavior. However CAY-796 fix was already supposed to address the  
underlying deserialization bug (something I did not consider in my  
previous reply). Before we make any other changes, could you confirm  
that with a CAY-796 fix you can use DataDomain without EventManager?

Andrus


On Oct 7, 2007, at 1:54 AM, Emilian Bold wrote:
> Well, not quite a cayenne "bug" just a design decision that impacts  
> API users.
>
> I don't *need* to listen to events to why am I forced to set a manager
> ? Not to mention there's no warning and the 1st error I got sent me on
> a serialization wild goose chase.
>
> That was my whole idea: just use some default if no manager provided.
>
> Emilian
>
> On 10/4/07, Andrus Adamchik <andrus@objectstyle.org> wrote:
>> I see. Yes, EventManager needs to be provided to the DataDomain. So
>> this is not a bug in Cayenne, and I am not sure how we can "fix" it.
>> Injection of EventManager is tied to the lifecycle, so using an
>> arbitrary EM doesn't seem to be a good solution. Maybe we'll simply
>> document this behavior via Javadocs....
>>
>> A side note regarding the *default* EventManager, there are plans to
>> deprecate and avoid using it in Cayenne internally, as the singleton
>> makes configuration much less flexible.
>>
>> Andrus
>>
>> On Oct 4, 2007, at 4:09 PM, Emilian Bold wrote:
>>
>>> I finally figured out what my bug was (it wasn't CAY-796 actually).
>>>
>>> See https://issues.apache.org/cayenne/browse/CAY-871
>>>
>>> Emilian
>>>
>>> On 9/17/07, Emilian Bold <emilian.bold@gmail.com> wrote:
>>>> Thanks, that's great. I'll wait for the official 2.0.4 as I've
>>>> found a
>>>> workaround in my situation (still trying to figure out the exact
>>>> cause, I think some rich-client is serializing CayenneDataObjects
>>>> directly instead of client classes).
>>>>
>>>> Emilian
>>>>
>>>>
>>>> On 9/15/07, Andrus Adamchik <andrus@objectstyle.org> wrote:
>>>>> Ok, I fixed CAY-796 for 1.2, 2.0, 3.0 branches. To get a fixed
>>>>> version you can either build the code from Subversion [1,2] or  
>>>>> wait
>>>>> till 2.0.4 comes out.
>>>>>
>>>>> Cheers,
>>>>> Andrus
>>>>>
>>>>> [1] http://svn.apache.org/repos/asf/cayenne/main/branches/
>>>>> STABLE-2.0/
>>>>> [2] http://cayenne.apache.org/legacy-ant-build.html
>>>>>
>>>>>
>>>>> On Sep 12, 2007, at 7:54 PM, Andrus Adamchik wrote:
>>>>>> Hi there,
>>>>>>
>>>>>> Yeah, looks like CAY-796 [1] to me. I could swear we fixed it,  
>>>>>> but
>>>>>> looks like we did not. Ok, adding that to a TODO list...
>>>>>>
>>>>>> In the meantime try to check the "Use Shared Cache" checkbox  
>>>>>> in the
>>>>>> Modeler - this would hopefully take care of the problem (and
>>>>>> probably improve your performance if you could live with a bit of
>>>>>> object caching in your app).
>>>>>>
>>>>>> Andrus
>>>>>>
>>>>>>
>>>>>> [1] https://issues.apache.org/cayenne/browse/CAY-796
>>>>>>
>>>>>>
>>>>>> On Sep 12, 2007, at 6:18 PM, Emilian Bold wrote:
>>>>>>
>>>>>>> Hy,
>>>>>>>
>>>>>>> I keep getting this exception:
>>>>>>>
>>>>>>> java.lang.NullPointerException
>>>>>>>      at
>>>>>>> org.apache.cayenne.access.DataRowStore.sendUpdateNotification
>>>>>>> (DataRowStore.java:673)
>>>>>>>      at
>>>>>>> org.apache.cayenne.access.DataRowStore.processSnapshotChanges
>>>>>>> (DataRowStore.java:538)
>>>>>>>      at
>>>>>>> org.apache.cayenne.access.DataRowStore.snapshotsUpdatedForObject

>>>>>>> s
>>>>>>> (DataRowStore.java:278)
>>>>>>>      at
>>>>>>> org.apache.cayenne.access.ObjectResolver.objectsFromDataRows
>>>>>>> (ObjectResolver.java:121)
>>>>>>>      at
>>>>>>> org.apache.cayenne.access.ObjectResolver.synchronizedObjectsFrom

>>>>>>> Da
>>>>>>> taR
>>>>>>> ows(ObjectResolver.java:97)
>>>>>>>      at
>>>>>>> org.apache.cayenne.access.DataDomainQueryAction.interceptObjectC

>>>>>>> on
>>>>>>> ver
>>>>>>> sion(DataDomainQueryAction.java:319)
>>>>>>>      at org.apache.cayenne.access.DataDomainQueryAction.execute
>>>>>>> (DataDomainQueryAction.java:116)
>>>>>>>      at org.apache.cayenne.access.DataDomain.onQuery
>>>>>>> (DataDomain.java:730)
>>>>>>>      at  
>>>>>>> org.apache.cayenne.util.ObjectContextQueryAction.runQuery
>>>>>>> (ObjectContextQueryAction.java:217)
>>>>>>>      at org.apache.cayenne.access.DataContextQueryAction.execute
>>>>>>> (DataContextQueryAction.java:54)
>>>>>>>      at org.apache.cayenne.access.DataContext.onQuery
>>>>>>> (DataContext.java:
>>>>>>> 1387)
>>>>>>>      at org.apache.cayenne.access.DataContext.performQuery
>>>>>>> (DataContext.java:1376)
>>>>>>> ...
>>>>>>>
>>>>>>> on Cayenne 2.0.2.
>>>>>>>
>>>>>>> This seems to happen always for the same Local EJB, while other
>>>>>>> Local
>>>>>>> EJBs that use Cayenne in the same way seem to work. From a
>>>>>>> previous
>>>>>>> email, it seems this has something to do with the  
>>>>>>> serialization of
>>>>>>> the
>>>>>>> objectStore.
>>>>>>>
>>>>>>> What can I do to get rid of this ?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Emilian Bold
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Emilian Bold
>>>>>>> +40 740235562
>>>>>>> http://www.emilianbold.ro
>>>>>>>
>>>>>>> Java and NetBeans Platform-loving consulting services from
>>>>>>> Timisoara, Romania.
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Emilian Bold
>>>> +40 740235562
>>>> http://www.emilianbold.ro
>>>>
>>>> Java and NetBeans Platform-loving consulting services from
>>>> Timisoara, Romania.
>>>>
>>>
>>>
>>> --
>>> Emilian Bold
>>> +40 740235562
>>> http://www.emilianbold.ro
>>>
>>> Java and NetBeans Platform-loving consulting services from
>>> Timisoara, Romania.
>>>
>>
>>
>
>
> -- 
> Emilian Bold
> +40 740235562
> http://www.emilianbold.ro
>
> Java and NetBeans Platform-loving consulting services from  
> Timisoara, Romania.
>


Mime
View raw message