Toby,
If your requirements call for supporting soap headers you will need to use the document/literal style that webMethods IS calls SOAP-MSG.
Search the forums for several discussions on document/literal soap messages.
In a nutshell, you have to create a wrapper service that processes the the header and body elements of the incoming soap request before invoking the Flow or java service you wish to expose as a web service. The wrapper service also constructs the soap response message to be returned to the caller.
The wrapper service uses pub.soap.utils:getHeader or pub.soap.utils:getHeaderEntries to extract a node representation of one or more soap header elements respectively. You then use pub.xml:queryXMLNode or pub.xml:xmlNodeToDocument to convert the node into a document.
These services are covered in the built-in services guide found in your \Developer\docs folder. The Soap Developer’s Guide and Web Services Developer’s Guide are also helpful and found in the \Developer\docs\guildes folder.
Mark
#API-Management#webMethods#soa