Just create a new soap-dust client. Then initialize it with the appropriate wsdl and endpoint urls. Finally, call its call method with the name of the remote operation you want to call and the corresponding parameters:

If you do not read wsdl fluently, you can find hope in the explain method.

Just create a new soap-dust client. Then initialize it with the appropriate wsdl url. Finally, call its explain method to display all the operations supported by the remote server and the expected parameters:

If you need to customize the HttpURLConnection in any way and especially to set a connect and read timeout, you can do this by overriding the protected method of class Client customizeHttpConnectionBeforeCall:

How can I test my code that uses soap-dust (or just code that performs HTTP requests).

soap-dust comes with a URL handler for the special protocol test:. A test: url will simulate an http url. When you create this url, you set the file that contain the data you want to be returned when querying this url. You may also set the HTTP status code you want to be obtained when querying this url.

For instance querying the following url will result in a 500 HTTP request. The data received will be extracted from the file test/response.xml:

As surprising as it might seem, soap-dust does not handle that very nicely for now :(
To do that, you will have to either encapsulate each of your array elements inside a separate ComposedValue
with fake names or put each element of your array in the ComposedValue.
For instance if the method m takes a parameter p of type array (of strings), then one can make a call
like this :