"Jean-Jacques Moreau" <jean-jacques.moreau@crf.canon.fr> writes:
>
> It may be a matter of taste if the corresponding WSDL should mirror that
> separation of concerns, i.e. headers only in the binding, not in the
> interface.
Its not a matter of taste to me but rather a matter of principle;
the abstraction should support thinking about the data involved and
if there's a need for headers just insert them using soap:header.
> To make things more concrete, let's suppose my application deals with
> two complex types, one of which I want to serialize as a SOAP body, the
> other as a SOAP header block.
See that's the wrong place to start IMO- applications don't start by
thinking about two pieces of data and where they come from the SOAP
envelope. If the app has two pieces of data, then the solution is
to send both as payload. If in sending that it needs to indicate
some additional headers to be sent, then use soap:header to do it.
> With your proposal, how would I do this?
If the 2nd piece of data is indeed a SOAP header, then put a soap:header
element in the binding to insert that header and put only the first
guy as the payload.
Sanjiva.