WSO2 EI 6.5.0从json-eval表达式值获取特定字符串

时间:2019-07-03 02:22:32

标签: wso2 wso2esb wso2dss wso2ei

我对数据服务/ wso2 /的回答如下:

我只想在此显示 errorMessage key 中的此字符串(<< strong> SECURITYCODEбуруубайна!!! >):

List<Optional<String>>

该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以尝试对errorMessage进行正则表达式替换,并将结果存储在如下属性中。

<property name="securityCode" expression="replace(//errorMessage, '.*(SECURITYCODE.*?)\\.*', '$1')"/>

请记住,您可能必须在EI上启用xpath 2.0才能使用高级xpath功能。您可以通过在synapse.properties文件中将synapse.xpath.dom.failover.enabled属性设置为true来完成此操作。

另一个正则表达式可以是:.*Nested Exception:-\\n(.*?)\\n.* 基本上,正则表达式匹配整个字符串,只要它包含嵌套异常,后跟换行符,之后要捕获的内容,再换行符即可。使用括号完成捕获,这将创建一个捕获组,您可以在替换中将其重用$ 1(指向第一个捕获组,将$ 2引用至第二个捕获组,等等)

您可以将其调整为需求/错误消息格式。

要测试您的正则表达式,您始终可以使用regex101.com