相关疑难解决方法(0)

创建一个ResourceConfig,其行为与默认Jetty的Jersey注册相同

我有一个端点:

@POST
@Path("/test")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public String canaryTest(String JSON) {
    return JSON;
}
Run Code Online (Sandbox Code Playgroud)

当我使用Jersey在Jetty中注册时

ServletHolder holder = new ServletHolder(new ServletContainer());
Run Code Online (Sandbox Code Playgroud)

一切似乎都很好.但是,如果我尝试明确指定默认配置,它将停止工作(从端点返回媒体类型错误).即使只是将ResourceConfig的默认实例传递给ServletContainer,它也会停止工作.

ResourceConfig config = new ResourceConfig();
//config.property(x,defaultX)
//config.property(y,defaultY)
ServletHolder holder = new ServletHolder(new ServletContainer(config));
Run Code Online (Sandbox Code Playgroud)

我想手动和显式地模拟默认配置行为,所以我在这里要问的是我应该如何配置ResourceConfig以使行为保持工作(即,要设置的属性)

PS:我正在使用Jetty 9.2.6.v20141205和Jersey 2.14.Maven中的依赖关系:

  • org.eclipse.jetty.jetty-server org.eclipse.jetty.jetty-servlet
  • org.eclipse.jetty.jetty-的servlet
  • org.glassfish.jersey.containers.jersey-容器servlet的芯
  • com.sun.jersey.jersey-JSON
  • org.glassfish.jersey.media.jersey-媒体JSON - 杰克逊

java json jetty jax-rs jersey

4
推荐指数
1
解决办法
5399
查看次数

标签 统计

java ×1

jax-rs ×1

jersey ×1

jetty ×1

json ×1