【问题标题】:Oracle Service Bus - XML based proxy serviceOracle Service Bus - 基于 XML 的代理服务
【发布时间】:2015-09-02 17:10:09
【问题描述】:

我有一个类似的 xml 文件

<A>
    <B>abc</B>
    <C>1</C>
</A>
<A>
    <B>def</B>
    <C>2</C>
</A>

我必须根据“C”的值来获取“B”的值,这将是 OSB 中代理服务的输入。 请帮助我将如何创建这种类型的代理服务?

【问题讨论】:

    标签: middleware osb


    【解决方案1】:

    一个 XQuery 和 2 个简单的赋值:

    Create a XQuery resource which will return your XML structure
    
    1) Inside Proxy, first action is Assign XQuery call to the file above as a local variable, ie: $xmlFile
    2) Then another Assign where you do $xmlFile/A[./C=$body/C]/B/text()
    

    【讨论】:

      【解决方案2】:

      您可以创建代理服务,而无需提供任何将接受简单 XML 作为输入的 WSDL 引用。 OSB 将此 XML 输入包装在 soap:Body 下。

      因此 XPath 可用于从该负载中获取值,例如 $body/A[1]/B/text()。

      如果您只需要检索一次,请使用分配操作,否则请使用 Xquery。

      希望它会有所帮助。

      【讨论】:

        猜你喜欢
        • 2016-06-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-04
        • 1970-01-01
        • 2015-06-17
        相关资源
        最近更新 更多