Sunday, August 25, 2002 12:17 AM
The problem is that you are trying to execute a GUI application remotely (i.e. you are logged in to the machine "node00" and are trying to execute the application but display its user interface on "whale.cscs.qmw.ac.uk"). In order to do this, you must be given access to the X Windows server running on the remote host.
As you mentioned in your post, this can be accomplished by having the user who "owns" the X server on "whale" do an "xhost +" (very, very, very insecure) or "xhost +node00" (very, very insecure). However, because xhost is an insecure mechanism, I highly recommend using another approach.
For an in-depth discussion on running X Windows applications remotely, see the Remote X Apps mini-HOWTO. Pay particular attention to sections 6.2 (xauth) and 6.3 (SSH). I highly recommend using SSH with X-forwarding enabled. It is by far the easiest approach (everything is set up automatically by SSH) and the most secure (especially when coupled with Kerberos for authentication).
If your intent is not to execute the application on "node00" and display its interface on "whale," you need to change your
DISPLAY environment variable to use the local machine's display. To do this, execute the command:
in a Bourne shell (sh) or Bourne-compatible shell (like bash) before issuing the
appletviewer command. Or, change the variable for the one command with:
DISPLAY=:0 appletviewer NorthfieldBanque.java