簡體   English   中英

如何使用Apache Camel,java DSL,eclipse更改XML文件的內容

[英]How can I change the content of XML file with Apache Camel, java DSL, eclipse

我有一個XML文件,名稱為input-kunde-2.xml。

from("file:c:/test/?fileName=input-kunde-2.xml")
<?xml version='1.0' encoding='UTF-8'?>
<list>    
   <Name>Ying</Name>
   <Age>23</Age>
</list>

我已經使用Apache Camel將這個文件從C:/路由到另一個地方D:/。

to("file:d:/test/?fileName=output-kunde-2.xml")

我想要什么?

現在,我想更改XML文件的內容。

在文件input-kunde-2.xml中: <Name>Ying</Name>

在文件output-kunde-2.xml中: <Name>Wang</Name>

我該如何實施? 可以嘗試使用:

File body = exchange.getIn().getBody(File.class);
//KundeDTO kundeDTO = exchange.getIn().getBody(KundeDTO.class);

但是我只能得到XML文件的路徑。

非常感謝!

如果要從文件中提取值,請將其視為XML文檔並使用xpath

例如與

.setHeader("myHeader").xpath("/list/Name/text()", String.class)

該文檔在此處http://camel.apache.org/xpath.html


如果要修改整個XML文檔,請使用XSLT。 使用“來自”來使用文件,然后將其通過XSLT組件,然后將其發送到您的文件位置

該文檔在此處http://camel.apache.org/xslt.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM