Tell me if I'm insane or not ...
I have a session bean, and one of the services it provides is a long-running
process which needs to inform the object on whose behalf it is running when
various events occur.
1. Client gets the session bean and calls createProcess(processID, this) ...
passing itself along
2. Session bean does it's thing, create a process and gives it the client
object reference
3. As the process processes, at various points it calls receiveEvent() on
the client object reference
Seems to me that this should be feasible using standard RMI stuff .. I made
an interface extending Remote that exposes the receiveEvent call, made the
client class extend UnicastRemoteObject, and ran rmic on the class to
generate a stub. The stub source looks sensible. Everything actually runs
without error, but the client callback never gets executed and the client
finishes but never terminates, as there are a couple of RMI-related threads
that never die.
I've successfully tested some vanilla RMI stuff and made remote object
calls, but I had to create a .java.policy file. Is there some equivalent
mechanism that needs to be set up for Orion?
Has anyone tried anything this funky? Is there an easier/saner way to do
this?
Thanks!
jd