For integrating with legacy application, we need to have a custom HTTP header goes with the SOAP request. We found that the current implementation of org.apache.soap.transport.http.SOAPHTTPConnection::send() already has a parameter (headers) to accept the desired HTTP headers.
public void send (URL sendTo, String action, Hashtable headers, Envelope env, SOAPMappingRegistry smr, SOAPContext ctx) All we need is to have another org.apache.soap.rpc.Call::invoke() method that takes a parameter (hashtable) for HTTP headers, and passes this parameter to the one in SOAPHTTPConnection::send(), rather than a null (which is what the current version does). We're hopping the developer of the org.apache.soap.rpc.Call can add this functionality to the next version of SOAP API. Thanks for your concerns. Regards, Charles.