自定义bean骆驼数据

时间:2018-03-22 13:42:11

标签: apache-camel spring-camel

如何将自定义bean用作camel中的生产者端点,然后将其连接到处理bean或/和使用者bean。

例如,我想使用其中一个bean方法从数据库中使用数据,然后将结果传递给同一个bean的另一个方法或另一个bean来处理数据,然后传递给jms队列。

我想做类似的事情,但流程永远不会进入patstat服务

public void configure() throws Exception {
        from("direct:start").bean("patstatService", "getTestData")
        .bean("patstatExtractorAutmn","generatRSSFromData")
        .to("activemq:patstat:test");
    }

2 个答案:

答案 0 :(得分:1)

我找不到直接从bean消费的方法。 对于我的用例,每隔一秒使用bean的调度可能会起作用。所以现在以下工作做了,但我希望有一种方法可以直接从bean中使用,因为这是一个有效的用例,在我看来非常有用。

public void configure() throws Exception {
         from("timer:patstat?period=1s").bean("patstatService", "getTestData")
        .bean("patstatExtractorAutmn","generatRSSFromData")
        .to("activemq:patstat:test");
    }

答案 1 :(得分:0)

另一个解决方案是在路由启动时只调用一次bean,并将处理逻辑放在bean中,如下所示:

from("timer:patstat?repeatCount=1").threads().bean("patstatService", "getData").routeId(""+startYear);
相关问题