A simple application of VNC Viewer in Java using robot class. The underlying algorithm used can be found in the following slides : http://www.slideshare.net/embydextrous/distributed-services-scheduling-and-cloud-provisioning