Generally speaking;

It is not dead-easy to get Jini systems up and running, particularly it seems 
that people have problems with;

1. Codebase management.
2. Proper equals() and hashCode().
3. Connection management.
4. Fallback strategies.

There is nothing today stopping you from creating a Merlin-capable component 
that connects to a Jini Federation and participate as full peer. You need to 
take care of the above (and some more).

Except for 4. Merlin could handle the rest behind the scenes in a fairly 
robust manner, and communicate this to the AvailabilityAware component, which 
has to figure out what to do when Availibility is gone.
Such component would see the Jini Federation as a local system, and in fact 
couldn't tell whether the Jini service it connects to is a Jini service or 
just an ordinary component. It wouldn't have to worry about connection 
handling, how to create distributed accurate hashCode() and equals() and how 
to obtain the codebases required for the ServiceProxy and so on.

It would be fairly easy to Jini enable your apps, just make sure that the 
components are AvailabilityAware and have a 'fallback strategy' defined.

That is the first step.

Secondly, a JiniAware service, would need to be able to register its own 
ServiceProxy, and the question here arises whether this is generically 
useful, and perhaps not Jini specific at all, plainly Distributed specific.
That needs to be investigated in some greater detail with a few use-cases.


I see that the Availability contract has so much benefits that it will find 
its way into the standard Avalon Framework (v5, I guess) in due time, whereas 
Jini connectivity and other distributed technologies will become Merlin 
Facilities which you can enable. Time frame for all of this; "this year" 
perhaps.


Niclas
-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to