I think you have to create you own web service provider. There is a section about this in the user guide (http://jbws.dyndns.org/mediawiki/index.php/JAX-WS_User_Guide#Endpoint_Provider)
Doing this gives you the possibility to do whatever you want to do with your request and response - they are all under your control.
isn't @WebServiceProvider something that acts on the server side, that receives SOAP (or XML/HTTP in the case of RESTful services) messages, does something with the incoming message (and probably returns a result as a SOAP or XML/HTTP message)?
I thought that I wouldn't have to bother about the server side implementation of the WebService (it may be @WebService or @WebServiceProvider or something else) on the client side (that should only interface with the WSDL ServiceContract and not necessarily know anything about the server side expect from that) - Please correct me if that assumption is NOT correct!
So I think I will have to do something with Dispatch (https://jax-ws.dev.java.net/jax-ws-ea3/docs/dispatch.html) rather than Provider, but it is not clear to me if/how I can avoid writing JavaObjects for my custom complex data types.
Any further help/guidance is very much appreciated.
Sorry, my mistake - didn't read client. You should go for dispatch when it comes to clients. Then you have full control about everything.
After some more research I'm pretty sure that in the case of a truly dynamic client (i.e. no client-side stub generation from a remote WSDL before running the client that then invokes the WebService call) that should interact with a WebService operation, that has one or more custom complex input/output parameters, I can only create ("manually and dynamically") and then send SOAP messages via Dispatch (even JAXB-Dispatch won't help in my case).
In the case of simple data types I could still use the "old" JAX-RPC DII client approach.
Can you (or someone else) think of other possibilities or tell me if I'm completely wrong?
Does anyone know of a Java library that can create "sample" SOAP messages (see Altova XML Spy or Eclipse WebServices Explorer or Web Service Console Eclipse Plugin or ...) given a specific WebService operation in a WSDL (I know this question may be a bit off topic, but it seems as it would be a key building block in order to go with the JAX-WS Dispatch client)?
You can always look into SAAJ, with some effort (initial one), you can develop some classes and make a dynamic client.
As for generating SOAP messages, try SOAPui, either the standalone app or the Eclipse plugin for JBoss IDE.