-2

如何使用自定义 bean 作为骆驼中的生产者端点,然后将其连接到处理 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");
    }
4

2 回答 2

1

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

public void configure() throws Exception {
         from("timer:patstat?period=1s").bean("patstatService", "getTestData")
        .bean("patstatExtractorAutmn","generatRSSFromData")
        .to("activemq:patstat:test");
    }
于 2018-03-22T15:41:33.787 回答
0

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

from("timer:patstat?repeatCount=1").threads().bean("patstatService", "getData").routeId(""+startYear);
于 2018-03-29T09:25:40.463 回答