使用带有camel的xpath并行处理大型xml只匹配一个表达式
首先,非常感谢您的帮助 我想并行处理一个大的xml文件(10MB),一个接一个地流式传输眼波。xml如下所示:使用带有camel的xpath并行处理大型xml只匹配一个表达式,xml,apache-camel,Xml,Apache Camel,首先,非常感谢您的帮助 我想并行处理一个大的xml文件(10MB),一个接一个地流式传输眼波。xml如下所示: ... ... 我终于通过以下代码片段实现了这一点: from(“文件:/home/dalonso/Documentos/Documentos/normalizator”) .split(xpath(“//PFA”)) .multicast() .至(“直接:国家路线”) 。至(“直接:职业路线”); 从(“直接:国家路线”) .split(xpath(“//PFA/CountryL
...
...
我终于通过以下代码片段实现了这一点:
from(“文件:/home/dalonso/Documentos/Documentos/normalizator”)
.split(xpath(“//PFA”))
.multicast()
.至(“直接:国家路线”)
。至(“直接:职业路线”);
从(“直接:国家路线”)
.split(xpath(“//PFA/CountryList/CountryName”)).streaming()
.log(“Country${headers.CamelSplitIndex}包含:${body}”).end();
from(“direct:occulationsroute”).split(xpath(“//PFA/occulationlist/occulation”)).streaming()
.log(“职业列表${headers.CamelSplitIndex}包含:${body}”).end();
请随时提出任何建议以改进它。非常感谢
from("file:/home/dalonso/Documentos/documentos/normalizador")
.choice()
.when(xpath("//PFA/CountryList"))
.to("direct:countriesRoute")
.when(xpath("//PFA/OccupationList"))
.to("direct:occupationsRoute");
from("direct:countriesRoute").split(xpath("//PFA/CountryList/CountryName")).streaming()
.log("Country ${headers.CamelSplitIndex} contains: ${body}").end();
from("direct:occupationsRoute").split(xpath("//PFA/OccupationList/Occupation")).streaming()
.log("OccupationList ${headers.CamelSplitIndex} contains: ${body}").end();