如何从客户端请求触发骆驼路线?

How to trigger camel route from client request?

我有这条路线:

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 端点,当我调用它时,我想要执行它的路由。

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

from("direct:runGetAllUsers")

然后在您的 Spring Rest 控制器中,您可以调用 Camel 路由。 Camel In Action 2 book with source here.

中有一个例子