Working with messages
Unlike the higher-level SEI based service implementations, Provider implementations receive requests as raw XML data and must send responses as raw XML data. This requires that the developer has intimate knowledge of the messages used by the service being implemented. These details can typically be found in the WSDL document describing the service.
WS-I Basic Profile provides guidelines about the messages used by services including:
-
The root element of a request is based in the value of the name attribute of the wsdl:operation element that corresponds to the operation being invoked.
Information noteWarning: If the service uses doc/literal bare messages, the root element of the request will be based on the value of name attribute of the wsdl:part element referred to by the wsdl:operation element. -
The root element of all messages will be namespace qualified.
-
If the service uses rpc/literal messages, the top-level elements in the messages will not be namespace qualified.
Information noteNote: The children of top-level elements may be namespace qualified. To be certain you will need to check their schema definitions. -
If the service uses rpc/literal messages, none of the top-level elements can be null.
-
If the service uses doc/literal messages, the schema definition of the message determines if any of the elements are namespace qualified.