WS-AT协议问题

发布于 2024-11-15 15:11:04 字数 63 浏览 1 评论 0 原文

您能帮助我了解 WS-AT 协议的工作原理吗?我的问题是:客户端服务器如何了解 WS-AT 协调服务的 url?

Could you help me with understanding how does WS-AT protocols works. My question is: how does client server get to know url to WS-AT coordination services?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

紫﹏色ふ单纯 2024-11-22 15:11:04

WS-AT 由处理系统上的 Web 服务的机制来处理。例如,如果您在 Windows 上使用 .NET,则 WS-AT 由 WCF 处理,WCF 使用 Windows 的分布式事务协调器 (DTC) 来协调事务。为此,显然它还依赖于 WS-Coordination 协议。

您确实需要为 WS-AT 配置系统。在 Windows 系统上,您可以使用 WS-AT 配置实用程序来执行此操作(另请参阅 http ://msdn.microsoft.com/en-us/library/ms732007.aspx)。

另请参阅 http://docs.oasis-open.org/ws-tx/wstx-wsat-1.1-spec-os/wstx-wsat-1.1-spec-os.html 和 WS -COOR 规格位于 http://docs.oasis-open.org/ws-tx/wscoor/2006/06

进一步阅读:http://searchsoa.techtarget.com/definition/WS-AtomicTransaction

但请注意,实现 WS-AT 并非易事,并且在异构系统上有效协调事务需要很长时间(因此您需要将系统配置为长时间超时)。

WS-AT is handled by the mechanism that handles web services on your system. For instance, if you use .NET on Windows, then WS-AT is handled by WCF, which uses Windows' Distributed Transaction Coordinator (DTC) to coordinate transactions. For this apparently it also relies on the WS-Coordination protocol.

You do need to configure your system for WS-AT. On Windows systems, you would use the WS-AT Config Utility for this (see also http://msdn.microsoft.com/en-us/library/ms732007.aspx).

See also the WS-AT Specs at http://docs.oasis-open.org/ws-tx/wstx-wsat-1.1-spec-os/wstx-wsat-1.1-spec-os.html and the WS-COOR Specs at http://docs.oasis-open.org/ws-tx/wscoor/2006/06.

Further reading: http://searchsoa.techtarget.com/definition/WS-AtomicTransaction.

Be aware, though, that implementing WS-AT is no easy task and that effectively coordinating transactions over heterogeneous systems takes a long time (and therefore you need to configure your systems for long timeouts).

吹梦到西洲 2024-11-22 15:11:04

在协调方面,客户端(或者可能更准确/可能是控制服务)使用本地事务技术(在 WCF 的情况下为 MSDTC)启动事务。当向另一个服务发出请求时,将在消息中发送 WS-Coordination 标头,其中将协调类型标识为 WS-AT、协调 ID(事务 ID)以及协调器的地址(在本例中为 MSDTC)

In terms of the coordination the client (or probably more accurately / likely a controlling service)starts a transaction using it local transaction technology (MSDTC in the case of WCF). When a request is made to another service a WS-Coordination header is sent in the message with identifying the coordination type as WS-AT, a coordination ID (Transaction ID) and with the address of the coordinator (in this case MSDTC)

笙痞 2024-11-22 15:11:04

通常事务协调器位于客户端。当客户端调用事务性 Web 服务时,它必须包含如下所示的 SOAP 标头:

<wscoor:CoordinationContext
    xmlns:wscoor="http://docs.oasis-open.org/ws-tx/wscoor/2006/06"
    SOAP-ENV:mustUnderstand="1">
    <wscoor:Identifier>urn:0:ffffac1b0a40:46142b39:57ce82aa:1f57
    </wscoor:Identifier>
    <wscoor:CoordinationType>http://docs.oasis-open.org/ws-tx/wsat/2006/06
    </wscoor:CoordinationType>
    <wscoor:RegistrationService>
        <wsa:Address>http://xxxx.yyyy.zz:8080/ws-c11/RegistrationService
        </wsa:Address>
        <wsa:ReferenceParameters>
            <wsarj:InstanceIdentifier
                xmlns:wsarj="http://schemas.arjuna.com/ws/2005/10/wsarj">0:ffffac1b0a40:46142b39:57ce82aa:1f57
            </wsarj:InstanceIdentifier>
        </wsa:ReferenceParameters>
        <wsa:Metadata>
            <wsam:ServiceName xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"
                EndpointName="RegistrationPortType">wscoor:RegistrationService</wsam:ServiceName>
        </wsa:Metadata>
    </wscoor:RegistrationService>
</wscoor:CoordinationContext>

中,它指定事务协调器注册服务的 URL。

Generally transaction coordinator is at client side. When the client invokes a transactional web service it must include a SOAP header like this:

<wscoor:CoordinationContext
    xmlns:wscoor="http://docs.oasis-open.org/ws-tx/wscoor/2006/06"
    SOAP-ENV:mustUnderstand="1">
    <wscoor:Identifier>urn:0:ffffac1b0a40:46142b39:57ce82aa:1f57
    </wscoor:Identifier>
    <wscoor:CoordinationType>http://docs.oasis-open.org/ws-tx/wsat/2006/06
    </wscoor:CoordinationType>
    <wscoor:RegistrationService>
        <wsa:Address>http://xxxx.yyyy.zz:8080/ws-c11/RegistrationService
        </wsa:Address>
        <wsa:ReferenceParameters>
            <wsarj:InstanceIdentifier
                xmlns:wsarj="http://schemas.arjuna.com/ws/2005/10/wsarj">0:ffffac1b0a40:46142b39:57ce82aa:1f57
            </wsarj:InstanceIdentifier>
        </wsa:ReferenceParameters>
        <wsa:Metadata>
            <wsam:ServiceName xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"
                EndpointName="RegistrationPortType">wscoor:RegistrationService</wsam:ServiceName>
        </wsa:Metadata>
    </wscoor:RegistrationService>
</wscoor:CoordinationContext>

At <wsa:Address> it specifies the URL of the transaction coordinator registration service.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文