You can't send an InputStream object - it is not serializable. Sending the bytes that make up the stream also won't work - they need to be converted to ASCII. Youd could use base-64 encoding to obtain an ASCII representation of the byte array, and then send that as a
string (which is one of the data types WSDL supports). The Jakarta Commons odec library has classes that can perform base-64 encoding/decoding.