Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Wildfly Swarm上使用Java DSL设置Apache骆驼休息路线_Java_Rest_Apache Camel_Wildfly Swarm - Fatal编程技术网

在Wildfly Swarm上使用Java DSL设置Apache骆驼休息路线

在Wildfly Swarm上使用Java DSL设置Apache骆驼休息路线,java,rest,apache-camel,wildfly-swarm,Java,Rest,Apache Camel,Wildfly Swarm,我试图在Wildfly Swarm中设置一个Camel Rest服务,但我不确定RouteBuilder类是如何实例化的,甚至不确定CamelContext是如何实例化的。我下载了Wildfly Swarm示例,并查看了Camel CXF-JAXRS项目,这是有意义的,但它使用XML来定义路由。我想使用JavaDSL。我的RouteBuilder类如下所示: public class GreetingService extends RouteBuilder { @Override

我试图在Wildfly Swarm中设置一个Camel Rest服务,但我不确定RouteBuilder类是如何实例化的,甚至不确定CamelContext是如何实例化的。我下载了Wildfly Swarm示例,并查看了Camel CXF-JAXRS项目,这是有意义的,但它使用XML来定义路由。我想使用JavaDSL。我的RouteBuilder类如下所示:

public class GreetingService extends RouteBuilder {
    @Override
    public void configure() {
        System.out.println("RouteBuilder.configure");
        restConfiguration().host("localhost").port("9797");
        rest("/say")
                .get("/hello").to("direct:hello")
                .get("/bye").consumes("application/json").to("direct:bye")
                .post("/bye").to("mock:update");

            from("direct:hello")
                .transform().constant("Hello World");
            from("direct:bye")
                .transform().constant("Bye World");
    } 
}
我尝试过使用camel-context.xml文件和不使用camel-context.xml文件。Swarm已启动,但我无法浏览到rest服务端点

如何调用RouteBuilder?我是否应该有某种主方法来实例化上下文


我使用的是Widlfy Swarm 2017.8.1,该类位于war文件中。

您可以在web.xml中将此侦听器添加到引导程序中。org.apache.camel.component.servletlistener.SimpleCamelServletContextListener
或者您可以使用spring定义驼峰上下文

是否应用了wildfly驼峰补丁。我前一段时间做过这件事,在它开始工作之前,我必须做一些步骤。Hoe gaan dit met Slaapstad?@Namphibian baie lekker:我正在使用mvn管理Wildfly Swarm版本及其所有依赖项,它位于2017.8.1,这是最新的稳定版本。这很有效。我添加了一个src/main/resources/camel/camel-context.xml文件,并指定了RouteBuilder类如下所示的包:za.co.camel.rest