I think the best thing to do with these is to back out the changes below and start again, I think I've got a better solution to the problem I was trying to solve there.

The original intent behind the changes to RemoteEvent, were to change it's internal handback object to a MarshalledInstance from MarshalledObject, so the Java CDC Personal Basis Profile could participate in a djinn, with some very basic simple services and as a client.

Since proxy's that aren't compatible with CDC simply either won't unmarshall or can't be matched, this makes it relatively simple.

The problem with the RemoteEvent was that it is tied to it's serialized form, so what I needed was a MarshalledInstance, with MarshalledObject serialized form. What happened of course is I tried to convert the form in the writeObject and readObject methods, however this is the wrong approach, since there is an Object source field in RemoteEvent that could too be a MarshalledObject.

Cut a long story short, what I need is a container class for MarshalledInstance that has MarshalledObject's serialized form, which I can use to replace MarshalledObject fields inside objects while preserving the existing object methods. That would also mean that any objects that utilise it don't need to change their serialization methods.

Stay tuned.

Cheers,

Peter.

Jonathan Costers wrote:
FWIW - I backed out (back to the original Sun contribution) all changes to
the following files:

src/net/jini/core/event/RemoteEvent.java
src/net/jini/discovery/RemoteDiscoveryEvent.java
src/net/jini/lease/RenewalFailureEvent.java
src/net/jini/core/lookup/ServiceEvent.java

and now I have the servicediscovery QA test category running fine (so far,
but some of the tests that were failing earlier are passing).

2010/8/31 Jonathan Costers <[email protected]>

Great! Would you be able to create a JIRA issue for it?
I would do it myself but I believe you have a better idea on how to
describe what exactly is going on.

2010/8/31 Peter Firmstone <[email protected]>

Ok,
I found the culprit, it's RemoteEvent.

Will look into it further tomorrow, off to sleep now.

Peter.


Patricia Shanahan wrote:

On 8/25/2010 1:34 AM, Peter Firmstone wrote:
...

I've gotten to the bottom of what's causing the failures, one's a null
reference, the other a serialization problem, the first problem's easy,
the second will take a bit more thought.

com/sun/jini/test/spec/discoveryservice/event/Discovered.td also fails
with 935130 but passes with 934258.

I may delay work on problems in tests that were not being run until I can
retest against the fixes you are working on. I have a feeling a lot more
tests will pass.

Patricia




Reply via email to