See JAX-RPC; what you need is Dynamic proxies or Dynamic Invocation Interface (DII) if client doesn't know the remote method name or its signature.
Here a good example of what you can do with JAX-RPC having just a WSDL as input.
As said in the comment, JAX-RPC is evolved to JAX-WS.