将 Foreach 循环到 WSO2ESB 中不起作用
Loop Foreach into WSO2ESB doesn't working
我正在整合 wso2dss 3.5 和 wso2esb 4.9。在 DSS 中,我创建了一个 DataService 来从数据库中获取数据。在 WSO2 仪表板进入 DSS 之后,我在我的 eclipse 项目 (Developer Studio) 中使用了端点。 DSS生成的xml是:
<elements xmlns="http://ws.wso2.org/dataservice">
<row>
<name>nome1</name>
<address>rua xalala das xalalas</address>
</row>
<row>
<name>nome2</name>
<address>ruas rms did sa</address>
</row>
<row>
<name>nome3</name>
<address>aldoas daso dasodsa</address>
</row>
</elements>
所以,在我的 ESB 项目中,我有这个生成的代码:
<foreach expression="//elements/row">
<sequence>
<payloadFactory media-type="xml">
<format>
<p:Insert xmlns:p="http://ws.wso2.org/dataservice">
<xs:nome xmlns:xs="http://ws.wso2.org/dataservice"></xs:nome>
<xs:endereco xmlns:xs="http://ws.wso2.org/dataservice"></xs:endereco>
</p:Insert>
</format>
<args>
<arg evaluator="xml" expression="/row/name"/>
<arg evaluator="xml" expression="/row/address"/>
</args>
</payloadFactory>
<log>
<property name="xalela" value="xalxalxlalxal"/>
</log>
</sequence>
</foreach>
问题是它没有登录到foreach,换句话说,它没有在foreach mediator 内部访问。怎么了?
xpath //elements/row
return 没有,因为节点“elements”属于命名空间 http://ws.wso2.org/dataservice
尝试使用 //ds:element/ds:row and
将 ds 定义为 xmlns:ds="http://ws.wso2.org/dataservice"
我正在整合 wso2dss 3.5 和 wso2esb 4.9。在 DSS 中,我创建了一个 DataService 来从数据库中获取数据。在 WSO2 仪表板进入 DSS 之后,我在我的 eclipse 项目 (Developer Studio) 中使用了端点。 DSS生成的xml是:
<elements xmlns="http://ws.wso2.org/dataservice">
<row>
<name>nome1</name>
<address>rua xalala das xalalas</address>
</row>
<row>
<name>nome2</name>
<address>ruas rms did sa</address>
</row>
<row>
<name>nome3</name>
<address>aldoas daso dasodsa</address>
</row>
</elements>
所以,在我的 ESB 项目中,我有这个生成的代码:
<foreach expression="//elements/row">
<sequence>
<payloadFactory media-type="xml">
<format>
<p:Insert xmlns:p="http://ws.wso2.org/dataservice">
<xs:nome xmlns:xs="http://ws.wso2.org/dataservice"></xs:nome>
<xs:endereco xmlns:xs="http://ws.wso2.org/dataservice"></xs:endereco>
</p:Insert>
</format>
<args>
<arg evaluator="xml" expression="/row/name"/>
<arg evaluator="xml" expression="/row/address"/>
</args>
</payloadFactory>
<log>
<property name="xalela" value="xalxalxlalxal"/>
</log>
</sequence>
</foreach>
问题是它没有登录到foreach,换句话说,它没有在foreach mediator 内部访问。怎么了?
xpath //elements/row
return 没有,因为节点“elements”属于命名空间 http://ws.wso2.org/dataservice
尝试使用 //ds:element/ds:row and
将 ds 定义为 xmlns:ds="http://ws.wso2.org/dataservice"