WSO2富集介质
[WSO2 ESB V4.5.0] 我如何配置enrich mediator以积累XML有什么问题?我有一系列n个pojomediator,它们从数据库中检索XML,每个设置一个上下文属性,XML表示为字符串。例如,第一个PojoMediator执行后,其“上下文”属性设置为:WSO2富集介质,wso2,synapse,Wso2,Synapse,[WSO2 ESB V4.5.0] 我如何配置enrich mediator以积累XML有什么问题?我有一系列n个pojomediator,它们从数据库中检索XML,每个设置一个上下文属性,XML表示为字符串。例如,第一个PojoMediator执行后,其“上下文”属性设置为: customerInformation = <cust><id>1</id><oc></oc><ca>0</ca></cust
customerInformation = <cust><id>1</id><oc></oc><ca>0</ca></cust>
customerInformation=10
我正试图用XML内容丰富正文,但最终得到:
[snip]
</header>
<cust><id>1</id><oc></oc><ca>0</ca></cust></root></soapenv:Body></soapenv:Envelope> {org.apache.synapse.mediators.builtin.LogMediator}
[snip]
cust>id>1/id>oc>/oc>ca>0/ca>/cust>{org.apache.synapse.mediators.builtin.LogMediator}
…其中,enrich中介正在转义引用的“custInfo”XML。我的配置是:
<enrich>
<source type="property" property="custInfo"/>
<target type="body"/>
</enrich>
是否有方法强制enrich中介将属性(“custInfo”)视为XML片段而不是纯文本?我假设这就是XML被转义的原因,因为中介认为它正在设置节点的内容,而不是指定XML片段。如何定义属性?你能在加入后再试试吗
type="OM"
将属性设置为type=“OM”,但该属性位于pojoCommand的子属性中,并且似乎不支持type属性。然而,你的评论让我思考,然后我注入了另一个独立的属性中介,从pojoCommand获取结果,并将其分配给type=“OM”messageContext属性,然后在rich中介中使用它,瞧!谢谢你让我想到type=“OM”![snip]正如您引导我发现的那样,只需使用独立属性中介程序,即可应用type=“OM”。