Thanks for the info. Still not sure what we are going to do about though...

[FYI, for the actual patch you can check subversion tab in Jira]

https://issues.apache.org/cayenne/browse/CAY-796? page=com.atlassian.jira.plugin.ext.subversion:subversion-commits- tabpanel

Andrus



On Oct 17, 2007, at 9:54 AM, Emilian Bold wrote:
Hy,

I just tested my code with the 2.0.4 jar from the link you gave me
(and the 2.0.4 official release). It still throws that
NullPointerException if I don't init the EventManager properly.

So I think CAY-796  doesn't solve this as it's not actually a
serialization issue, just a null EventManager that's propagated to the
children. (I assume your patch was some readResolve() of some kind so
it's not so unexpected for me to still have the NPE).

Emilian


On 10/8/07, Andrus Adamchik <[EMAIL PROTECTED]> wrote:
Before we make any other changes, could you confirm that with a
CAY-796 fix you can use DataDomain without EventManager?

BTW, while the Cayenne developers are voting to make an official
2.0.4 release, you can download the unofficial release files from here:

http://people.apache.org/~aadamchik/release/2.0.4/

Andrus


On Oct 8, 2007, at 11:11 AM, Andrus Adamchik wrote:
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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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.snapshotsUpdatedForObj ec
ts
(DataRowStore.java:278)
     at
org.apache.cayenne.access.ObjectResolver.objectsFromDataRows
(ObjectResolver.java:121)
     at
org.apache.cayenne.access.ObjectResolver.synchronizedObjectsF ro
mDa
taR
ows(ObjectResolver.java:97)
     at
org.apache.cayenne.access.DataDomainQueryAction.interceptObje ct
Con
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.







--
Emilian Bold
+40 740235562
http://www.emilianbold.ro

Java and NetBeans Platform-loving consulting services from Timisoara, Romania.


Reply via email to