Dropwizard程序化端点

时间:2014-05-08 17:32:12

标签: java jersey jax-rs dropwizard

我希望以编程方式为dropwizard创建端点。如here所示,这可以通过泽西获得。

任何想法怎么做?这是我尝试过的一些示例代码,但是没有用到:

Resource.Builder resourceBuilder = Resource.builder();

    resourceBuilder.path("helloworld");
    ResourceMethod.Builder methodBuilder = resourceBuilder.addMethod("GET");
    methodBuilder.produces(MediaType.APPLICATION_JSON).handledBy(new Inflector<ContainerRequestContext, Object>() {
        @Override
        public Object apply(ContainerRequestContext containerRequestContext) {
            return "HELLO";
        }
    });

    environment.jersey().register(resourceBuilder.build());

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。

当我在ResourceConfig中注册资源时,它可以工作。

Resource.Builder resourceBuilder = Resource.builder();
 resourceBuilder.path("helloworld");
 ResourceMethod.Builder methodBuilder = resourceBuilder.addMethod("GET");
 methodBuilder.produces(MediaType.APPLICATION_JSON).handledBy(new Inflector<ContainerRequestContext, Object>() {
        @Override
        public Object apply(ContainerRequestContext containerRequestContext) {
            return "HELLO";
        }
    });
environment.jersey().getResourceConfig().registerResources(resource);