Seperate RMIRegistry from Server
Hi, I've spent some time researching and looking into this problem. I'm begining to get more and more concerned as I read a lot of mixed and crossed opinions.
My problem:
Can I have the client on Machine A, the RMIRegistry on Machine B, and the RMIServer on Machine C?
Upon loading the RMIServer on machine C, it binds itself to the RMIRegistry on Machine B, then Client on Machine A can request Machine C via using lookup on the RMIRegistry on Machine B.
I've read a lot of mixed opinions on this topic, so I need something dead clear. Can this be done?
If not, any alternatives?
Thanks...
The Registry must be on the same host as the program which executes Naming.bind()/rebind()/unbind().
This is normally the host which hosts the RMI servers.
However I should note that it is possible to obtain references from a remote registry and bind them into a local one, so it's not quite the same thing as 'the Registry and the remote objects have to be on the same host'.
ejpa at 2007-7-14 22:34:43 >

ejp's response is very workable.
I've heard of having a general purpose rmi server on Machine B that gets the remote objects from the other servers and keeps them. Every client goes to Machine B for security, etc. and obtains the remote object it needs. The registry only has Machine B's remote object.
There is also the Jini network. If you want something classy, then check out jini.org.