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...

[637 byte] By [necro_ignisa] at [2007-10-3 4:31:19]
# 1

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 > top of Java-index,Core,Core APIs...
# 2

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.

cooper6a at 2007-7-14 22:34:43 > top of Java-index,Core,Core APIs...
# 3
Thanks for the replies. I think I'll spend my weekend doing some research and testing of JINI. From what I've read so far it a)seems like good stuff, and b) doesn't seem to be a huge leap from what I originally wanted to design.Thanks :o)
necro_ignisa at 2007-7-14 22:34:43 > top of Java-index,Core,Core APIs...