java - WS-Addressing 的目的是什么?

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

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

维基百科说它是传输中立机制的规范,允许网络服务“传达地址信息”。

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

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

最佳答案

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

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

enter image description here

使用 WS-Addressing,特定于传输的数据被复制到 SOAP header 。这将地址数据从协议(protocol)中分离出来,并分离到 SOAP 消息本身,实现了维基百科所说的“传输中立”。

enter image description here

WS-Addressing 在 WS* 规范组(即 WS-Security、WS-ReliableMessaging、WS-Coordination)中发挥着重要作用。

关于java - WS-Addressing 的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15705892/

相关文章:

java - Hybris 后台 : how to trigger a create wizard programmatically

下载过程的 Java Swing 进度条

java - 在 Eclipse 上安装 Java 3D

安卓网络服务认证

java - SOAP、JAXB 编码行为

java - 我如何将其变成一个简单的程序来接受 5 个数字并说出最小和最大?

javascript - IE9中JQuery ajax的奇怪问题

json - Http GET 方法到 Https?

java - 在不调用 Web 服务的情况下获取 soap 消息

java - 如何在 tomcat 中运行的 spring boot 应用程序中显示 soap 调用日志