Apache Camel REST - 没有连接

时间:2018-01-30 22:36:00

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

我正在尝试让Apache Camel的REST DSL正常工作,但它并没有为我提供连接。

我有一个被称为的RouteBuilder:

@Override
public void configure() {
restConfiguration().component("servlet")
      .contextPath("/")
      .enableCORS(true)
      .dataFormatProperty("prettyPrint", "true")
      .apiContextPath("/api-doc")
      .apiProperty("api.version", buildVersion)
      .apiProperty("cors", "true")
      .bindingMode(RestBindingMode.json);

rest("/say/hello")
      .get().route().transform().constant("Hello World");
}

然后路线实际上不起作用。

这是一个Spring Boot应用程序,其中包含通过JAX-RS定义的其他REST端点,但这是一个我希望能够保持独立的集成包。奇怪的是,在我不得不处理其他事情之前,几个月前这个WAS正在工作,但是现在,回到它,我甚至无法让这个简单的终端工作。

我的Maven pom.xml中有Camel,所有内容似乎都正常启动,但是当我点击http :: // localhost:9071 / say / hello时没有任何反应,我只是得到了标准的Tomcat 404页面。

对我缺少什么的想法?

1 个答案:

答案 0 :(得分:2)

根据这个:http://www.baeldung.com/apache-camel-spring-boot

  

从Camel的2.19版本开始,此配置已被删除   CamelServlet默认设置为“/ camel”。

所以/ camel / say / hello是正确的URL,它对我有用。还在看如何定制这个。

编辑:

以下是如何在Spring Boot下自定义此功能。您可以向application.properties添加一个属性,如下所示:

camel.component.servlet.mapping.contextPath=/*