SOAP RPC/Encoded 转换为 RPC/Literal

mik*_*ito 5 xml rpc soap

有谁知道将 RPC/Encoded WSDL 转换为 RPC/Literal 的工具或“黑盒”?我无法更改 API(它不是我的),但我想使用的工具不支持 RPC/Encoded。我想看看是否有人创建了一个简单的黑盒通信转换器。

我想使用wave maker,我不是程序员,所以我正在寻找一种工具来处理翻译。

Ste*_*tei 5

如果您要更改 WSDL 的编码,则 SOAP 消息将更改为:

RPC/编码消息示例

<soap:envelope>
    <soap:body>
        <myMethod>
            <x xsi:type="xsd:int">5</x>
            <y xsi:type="xsd:float">5.0</y>
        </myMethod>
    </soap:body>
</soap:envelope>
Run Code Online (Sandbox Code Playgroud)

RPC/文字消息示例

<soap:envelope>
    <soap:body>
        <myMethod>
            <x>5</x>
            <y>5.0</y>
        </myMethod>
    </soap:body>
</soap:envelope>
Run Code Online (Sandbox Code Playgroud)

http://www.ibm.com/developerworks/webservices/library/ws-whichwsdl/

因此,仅仅翻译 WSDL 是不够的,因为您可以看到 SOAP 消息之间的差异。

您可以创建一个充当中间人的组件:

  • 在 RPC/literal 中调用目标服务
  • 将功能作为 RPC/编码导出到您的应用程序

但是这个组件需要根据你的具体情况来实现,没有什么神奇的工具。