当前位置: 首页 > 知识库问答 >
问题:

将解组对象传递给Camel处理器

姚智
2023-03-14

我正在为一个应用程序使用Apache骆驼和Spring启动。我需要从目录中读取,然后散集xml读取,然后处理未编组的对象以在其中设置更多数据,然后再次列表并将其发送到不同的文件夹。我使用以下路由。请告诉我在解组到处理器后如何发送POJO。目前默认情况下,它是进入处理器的交换。

@SpringBootApplication
public class CamelApplication extends FatJarRouter {

    public static void main(String ... args) {
        SpringApplication.run(CamelApplication.class, args);
    }

    @Override
    public void configure() throws Exception {
        from("file:input?noop=true")
        .log("Read from the input file")
        .unmarshal(new XMLtoPOJO())
        .log("Unmarshalled the xml")
        .process(new MyProcessortoSetMoreDatatoPOJO())
        .log("Enriched with more data in processor")
        .to("file:destination")
        .log("Written to output file");
    }
}

共有1个答案

鲁钱明
2023-03-14

如果您使用的是处理器,您可以从exchange获得pojo,如下所示:

MyPojo pojo = exchange.getIn().getBody(MyPojo.class);

不需要处理器,只需编写一个普通的POJO bean,并使用POJO bean的方法签名即可

 public void doSomething(MyPojo pojo)

然后叫骆驼豆。有关更多详细信息,请访问:http://camel.apache.org/bean

 类似资料:
  • 我有一个类型为的自定义组件,它通过以下行添加到路由中: 创建一个终结点和消费者(类型为),该终结点和消费者反过来会发出消息,这些消息将到达和管道的其余部分。 为了进行监控,我需要消费者调用一个非驼峰对象上的方法,我正在创建一个Springbean。Camel管道对性能非常敏感,因此我无法将分成两半,并将监视器调用作为Camel组件插入它们之间(我的首选解决方案,因为不必真正了解监视器)。我不愿意将

  • 问题内容: 我在php中有对象,每个对象代表一个“项目”以及与之相关的所有信息。 当用户浏览页面时,这些对象应传递给javascript。理想情况下,镜像相同的结构,因此我可以使用Raphael在我的网站上将每个项目及其信息显示为单独的形状。 但是,如何将对象从php转换为javascript? 问题答案: 您可以将PHP对象转换为数组,然后使用JSON函数对其进行编码。之后,从JavaScrip

  • 问题内容: 我正在尝试将可序列化的对象发送到挂起的Intent。问题是接收到的警报返回为空。即使Alarm实现了可序列化的接口。 收到的警报为空。 编辑:我尝试过的一些其他操作如下,但它似乎不起作用: 收到的警报为空。 问题答案: 我正在使用android Nougat,所以这些答案都没有奏效。我最终将对象传递到字节数组中。 然后我收到了Byte []

  • 我有带隔板的Spring批。gridSize是10,因此它将生成10个线程。一切都是默认的Bean单例。TaskExeutor最多有15个核心池10个。 这是读卡器,这个读卡器将返回数据库中的4行。自定义对象1到4。 示例查询: 设置非常简单。只是一个批处理过程,分区网格大小为10。 当我运行它时,Item reader会得到4条正确的记录。但当读卡器将数据传递给项目处理器时,我得到了这样的日志,

  • 问题内容: 这里有角的新手。我试图找出将对象传递给指令时出了什么问题。 这是我的指令: 这是我调用指令的模板: 是一组对象。 当我运行此,日志,而日志罚款的范围,甚至有一个与所有的数据,我找孩子。 我不确定我在这里做错了什么,因为这种确切的方法以前对我有用。 编辑: 我已经用所有必需的代码创建了一个插件:http ://plnkr.co/edit/uJCxrG 如您所见,该作用域在范围中可用,但我

  • 我创建了一个Author对象,用于构造函数的方法签名:public Book但是,我所做的赋值要求将Author(实例变量)更改为。当然,现在我以前的构造函数不行了。这是密码 如果我上传的方式不令人满意,我对任何不便表示歉意。我还没有学会使用堆栈溢出。 谢谢!