SOAP RPC / Encoded转换为RPC / Literal

时间:2012-02-11 13:07:19

标签: xml soap rpc

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

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

1 个答案:

答案 0 :(得分:4)

如果要更改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>

RPC / Literal消息示例

<soap:envelope>
    <soap:body>
        <myMethod>
            <x>5</x>
            <y>5.0</y>
        </myMethod>
    </soap:body>
</soap:envelope>

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

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

您可以创建一个像中间人一样的组件:

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

但是这个组件需要在你的特定情况下实现,没有神奇的工具。