Problem communicating between computers using rosjava
EDIT: I apologize for not providing more information earlier. Here is what we have so far:
Both computers are running Ubuntu 11.04 32bit with ROS Electric and the latest rosjava. We installed ROS using the sudo apt-get install instructions listed in the tutorials, and rosjava with the mercurial instructions listed in its tutorial.
When running the basic pubsub tutorial on a single computer, everything works as is expected. The result of rosnode list -a is :
oryx@oryx-client:~$ rosnode list -a
http://127.0.0.1:52560 /listener
http://oryx-client:54630/ /rosout
http://127.0.0.1:34734 /talker
The trouble occurs when I try to run the pubsub tutorial across multiple computers. I run through the normal checklist of adding the appropriate ip addresses to each computers hostlist. On both the client (oryx-client) and the server (oryx-server) I export ROS_MASTER_URI to http://oryx-client:11311.
To test it, I ran the python pubsub tutorial between the two computers. Everything worked as expected. When I try to run the rosjava pub sub tutorials, the listener on oryx-client crashes, returning the error:
Loading node class: org.ros.tutorials.pubsub.Listener
Nov 7, 2011 1:25:19 PM org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection refused
Nov 7, 2011 1:25:19 PM org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: Retrying request
Nov 7, 2011 1:25:19 PM org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection refused
Nov 7, 2011 1:25:19 PM org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: Retrying request
Nov 7, 2011 1:25:19 PM org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection refused
Nov 7, 2011 1:25:19 PM org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: Retrying request
Nov 7, 2011 1:25:19 PM org.ros.internal.node.topic.UpdatePublisherRunnable run
SEVERE: java.lang.RuntimeException: java.net.ConnectException: Connection refused
Running a rosnode list -a, as suggested, yields :
http://127.0.0.1:40997 /listener
http://oryx-client:51694/ /rosout
http://127.0.0.1:39597 /talker
Running roswtf returns with:
Loaded plugin tf.tfwtf
No package or stack in context
Static checks summary:
No errors or warnings
Beginning tests of your ROS graph. These may take awhile...
analyzing graph...
... done analyzing graph
running graph rules...
ERROR: connection refused to [http://127.0.0.1:39597]
... done running graph rulesOnline checks summary:
Found 2 warning(s).
Warnings are things that may be just fine, but are sometimes at faultWARNING Node [/listener] is not connected to anything
WARNING The following nodes are unexpectedly connected:
* unknown (http://127.0.0.1:40997/)->/rosout (/rosout)Found 3 error(s).
ERROR Communication with [/talker] raised an error:
ERROR Could not contact the following nodes:
* /talkerERROR The following nodes should be connected but aren't:
* /talker->/listener (/chatter)
Again, it works perfectly fine with the python ...