三、SOAP消息交换模型
从根本上讲,soap消息是一个从发送方到接收方的单向传送,但是,soap消息经常以强求/响应方式实现。
soap没有提供路由机制,但是soap知道soap消息从初始发送者到最终接收者的途中要经过0个或多个中间节点。接收到soap消息的soap节点必须按照处理模型执行处理,并且,如果适当的话,还会产生soap错误和soap响应消息,以及发送额外的soap消息。
soap处理模型描述了一个节点上的soap处理器在接收到一条soap消息时所采取的动作。必须按照以下顺序处理soap消息:
(1)确定节点的角色,这可以使用soap封装中的内容来确定。
(2)识别所有定向到该节点的强制报头条目。
(3)如果上一步中识别的一个或多个报头条目不被该节点所理解,则产生一个soapMustUnderstand错误,并取消所有后续的处理。与报体相关的错误不能在这一步里产生。
(4)处理所有定向到该节点的报头条目,并且如果该节点是最终接收者,则还要处理报体。soap节点必须处理所有定向到它的报头条目,但是可以选择忽略那些定向到它的非强制报头条目的处理。
(5)在中间节点的情况下,删除所有定向到该节点的报头条目(不管报头条目是被处理还是被忽略&#x