【问题标题】:What is the purpose of WS-Addressing?WS-Addressing 的目的是什么?
【发布时间】:2013-03-20 07:27:37
【问题描述】:

我只是对 ws-addressing 感到困惑。

维基百科称它是一种传输中立机制的规范,允许 Web 服务“传递寻址信息”。

传达寻址信息?难道 SOAP Web 服务一开始就没有这种能力,否则它们怎么能通信?

鉴于它似乎提供了核心功能,它提供了什么价值,为什么不作为默认内容的一部分?

【问题讨论】:

    标签: java web-services soap jax-ws ws-addressing


    【解决方案1】:

    WS-Addressing异步通过不同协议进行通信的上下文中最有用。它用于标记消息,以便稍后可以相互协调请求和延迟响应,而不管它是通过哪个协议发送的。

    如果您一直使用 HTTP,则不需要 WS-Addressing,这就是它默认关闭的原因。但是,我们倾向于假设 SOAP 只能通过 HTTP 传输,而实际上它可以通过其他方式传输,例如 SMTPJMS。他是一个说明问题的例证。

    使用 WS-Addressing,特定于传输的数据被复制到 SOAP 标头。这将 地址 数据从协议中解耦到 SOAP 消息本身,实现了维基百科所说的“传输中立性”。

    WS-Addressing 在 WS* 规范组(即 WS-Security、WS-ReliableMessaging、WS-Coordination)中扮演着重要角色。

    【讨论】:

    • 感谢您的回复!我仍然没有投票权,所以这是我能做的最好的事情
    • 那里应该有一个可点击的复选标记,表明您接受了答案。当您获得更多积分时,您将有机会投票。
    【解决方案2】:

    根据WS-Addressing specification by W3C organization

    /wsa:消息ID
    此 OPTIONAL 元素(类型为 xs:anyURI)传达 [message id] 属性。如果存在 wsa:ReplyTo 或 wsa:FaultTo,则必须存在此元素。

    /wsa:ReplyTo
    此 OPTIONAL 元素(类型为 wsa:EndpointReferenceType)提供 [reply endpoint] 属性的值。如果需要回复,则必须存在此元素。如果此元素存在,则 wsa:MessageID 必须存在。

    /wsa:FaultTo
    此 OPTIONAL 元素(类型为 wsa:EndpointReferenceType)提供 [fault endpoint] 属性的值。如果此元素存在,则 wsa:MessageID 必须存在。

    【讨论】:

      猜你喜欢
      • 2011-12-14
      • 2012-04-12
      • 2010-10-16
      • 2020-04-05
      • 1970-01-01
      • 2010-10-11
      • 1970-01-01
      • 1970-01-01
      • 2021-08-19
      相关资源
      最近更新 更多