I have a Java application which is a long running process (lets call it a "server"). I have to write a desktop GUI (most likely in Swing), lets call it a "client", which can connect to this application and:
- display status updates from the application
- give specific "manually triggered" commands to the application
Each interaction (conversation thread) between the client and the server would be short, but might involve a few messages up and down. What are the various options to implement something like this? Speed is not a huge concern for me; I am more interested in something where I can evolve the conversation protocol without being bogged down by the plumbing details. The options I have in mind now are sockets, RMI, JMS and JavaSpaces.