如何根据客户要求触发骆驼路线?

时间:2019-03-23 12:36:07

标签: spring-boot apache-camel spring-camel

我有这条路线:

from("timer://test?repeatCount=1").routeId("newRoute")
    .streamCaching()
    .process(exchange -> exchange.getIn()
        .setBody(exchange.getIn()
            .getBody()))
    .marshal()
    .json(JsonLibrary.Jackson)
    .setHeader(Exchange.HTTP_METHOD, constant("GET"))
    .setHeader(Exchange.CONTENT_TYPE, constant("application/json"))
    .to("http://localhost:8080/getAllUsers")
    .log(LoggingLevel.INFO, "This is my body: ${body}")
    .to("activemq:queue://new-queue");

当它位于@override configure()中时,它将在应用程序上运行。启动。但是我要做的是从Spring Boot RestController调用(触发)该路由。

我有GET端点,当我调用它时,我想知道它的路由。

1 个答案:

答案 0 :(得分:3)

您可以将'from'子句替换为以下内容:

from("direct:runGetAllUsers")

然后在Spring Rest控制器中可以调用Camel路由。 Camel In Action 2 book中带有source here的例子。