I have JBoss 4.0.4 installed on a Linux box. It is running behind a firewall with NAT. It
has its own private IP address non-addressable from outside - very typical. I searched and
found some document regardingt to set -Djava.rmi.server.hostname to the public IP address
of the server when starting JBoss server.
The client, using EJB3, can create an initial context to the server without problem. But
the first lookup through the context will fail. The client console indidcate that it is
trying to access InvokerLocator at socket://x.x.x.x:3873. The x.x.x.x is the private IP
address of the server not accessible from outside. So the call will fail. The 3873 is
defined in deploy/ejb3.deploy/META-INF/jboss-service.xml with
socket://${jboss.bind.address}:3873
Apparently, it is bound to the private IP address. But I can't change it to the public
IP address since the public IP address is a NAT through the firewall and is not valid in
the server box.
What do I need to do to return the public IP address to the client and at the same time be
able to start InvokerLocator using the private IP address? I have the
-Djava.rmi.server.useLocalHostname=false. It does not seem to make a difference true or
false. I don't think it matter in my case.
Thanks in advance,
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4136780#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...