我将XML文档存储在一个属性中:
<property expression="$body//*" name="InDoc"
scope="default" type="OM"/>
在代理的后续步骤中,需要访问XML文档。
这
<log level="custom">
<property name="InDoc" expression="get-property('InDoc')"/>
</log>
给出了整个XML文档。但是我只想访问XML的某些部分,例如在代理的后续步骤中仅访问一个值。我已经试过了
<log level="custom">
<property name="InDoc" expression="get-property('InDoc')//AAA"/>
</log>
或这个
<log level="custom">
<property name="InDoc" expression="$ctx:InDoc//AAA"/>
</log>
但是两者都不起作用。还有另一种方法吗?提前致谢。
罗兰
我认为两种方法都可以正常工作。该表达式支持XPath 1.0。您可以在表达式中的“ get-property”之后运行任何XPath。
但是你需要检查
确保使用正确的XPath。
因此,您可以记录/复制get-property('InDoc'),然后可以使用任何XPath工具来验证您的XPath。
表达式中XPath的命名空间,
如果您的xml有效负载具有命名空间,请确保您的XPath命名空间正确,并在属性中声明正确的NS。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句