You can register a Handler with the SoapClient to perform some processing and output any custom headers as part of a SOAP client invocation.

e.g.

SoapClient client = ...;
Handler myHandler = ...;
client.addHeaderHandler(myHandler);
response = client.invoke(body);