java - 在Camel中如何将xml节点传递给类中的方法

标签 java apache-camel

我有一个 xml 节点,我使用以下代码从 xml 文件中解析了该节点

    File file = new File("test.xml");
    DocumentBuilder dBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
    Document doc = dBuilder.parse(file);
    NodeList configNodeList = doc.getElementsByTagName("connector");
    Node configNode = configNodeList.item(0);

我必须将 congNode 传递给另一个类中的方法。 该项目位于 Camel 中,我必须测试一个类,该类具有接受 configNode 作为输入的方法。 是否在ProducerTemplate的sendBody中添加configNode

template.sendBody("");

或路线构建器中的某个位置

             from("direct:start")
             .to("mock:result"); 

我是 Camel 新手,遇到了困难。请帮忙!

最佳答案

要处理 XML 文件的选定节点,您可以编写如下所示的路由:

    from("file://test.xml?noop=true") //Read your xml
    .setBody().xpath("//connector/node()")       //select NodeList by xpath
    .split(body()) //Split list - below working with one Node
    .to("log:like-to-see-all?level=INFO&showAll=true&multiline=true") // print all data to log
    //below must be a processing of your node, maybe the data type conversion before that
    .bean(new YourBean(), "methodName");

关于java - 在Camel中如何将xml节点传递给类中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35487382/

相关文章:

java - 在多个环境中执行 JUnit 测试的配置

java - 2 使用 Maven 包含 jar 时缺少依赖项

java - Eclipse DI 不会创建带有 Created 注释的自定义对象

Java Android mysql 连接不适用于 4.0

java - Apache Camel : CXFRS Server : Need advice for Routing

java - 完成路由测试后,Camel 不会删除 camelLock 文件

java - 什么可能导致在 GZip 压缩数据流中创建错误的 EOF

java - Camel : stop the route when the jdbc connection loss is detected

java - 如何使用 apache Camel 而不是 xml 记录列表将平面文件中的单个记录转换为一个 xml

apache-camel - Apache Camel/ActiveMQ 优先路由