Ivan Bosnic
Ivan Bosnic

Reputation: 2006

Change Default RMI Port (Java)

How can I change the default RMI port (1099). It could be as JVM parameter or via coding, it doesn´t matter. Thanks.

Upvotes: 7

Views: 33551

Answers (2)

user207421
user207421

Reputation: 310913

You can specify your own port when exporting your remote object, either via super(port, ...) or exportObject(remote, port, ...) depending on whether you do or don't extend UnicastRemoteObject. If you extend Activatable there are similarly super() overloads with a port number. You can specify the Registry's port on the command line if you use that, otherwise via LocateRegistry.createRegistry() if you use that.

Upvotes: 3

Bill the Lizard
Bill the Lizard

Reputation: 405765

You can specify it on the command line. From the RMI Tutorial:

By default, the registry runs on port 1099. To start the registry on a different port, specify the port number on the command line. Do not forget to unset your CLASSPATH environment variable.

Microsoft Windows:

start rmiregistry 2001

Solaris OS or Linux:

rmiregistry 2001 &

In your code you use the LocateRegistry.getRegistry(String host, int port) override to locate the registry by hostname and port, as explained in the Creating a Client Program section of the tutorial. (The same applies when implementing your server.)

Upvotes: 11

Related Questions