Client programs interact with web services through creation of requests and receipt of responses. The most common approach uses a HttpURLConnection to address a web service with a known URL - thats why they are called web servicea after all. You certainly do NOT have to do any socket programming of your own - the standard Java library has all you need.
Other possibilities for communication between Java programs include email, java message service, and JINI.
There are plenty of toolkits and tutorials around to help you understand the possibilities and refine your requirements.