【问题标题】:Using @BeanParameter with Jersey将 @BeanParameter 与泽西岛一起使用
【发布时间】:2015-03-04 14:16:52
【问题描述】:

我正在使用 JAX-RS 创建一个完整的 web 服务,我已经开始使用 Wildfly 8.2 和 JEE7 进行开发,并且我能够实现这一点:

端点搜索方法:

@GET
@Path("/consultar")
public Response consultar(
        @QueryParam("offset") @DefaultValue(value = "0") Integer offSet, 
        @QueryParam("limit") @DefaultValue(value = "10") Integer limit, 
        @NotNull @BeanParam EmpresaDTO filtro) {
    return super.consultar(offSet, limit, filtro);
}

端点抽象搜索方法:

@Override
public Response consultar(Integer offSet, Integer limit, @NotNull Object filtro) {
    T filtroMaterializado = mapper.map(filtro, getClassType());
    Example example = getExampleGenerator().generate(filtroMaterializado);
    List<T> lista = getRepository().listar(offSet, limit, example);

    return getOkResponse(lista);
}

这一直有效,直到我有迁移到 Tomcat 的必要条件,然后我选择 Jersey 作为我的 JAX-RS 实现。现在我得到一个很大的错误堆栈跟踪,在服务器启动时跟随这个警告:

警告:HTTP GET 方法,公共 javax.ws.rs.core.Response br.com.logtec.delivery.resource.AbstractResource.consultar(java.lang.Integer,java.lang.Integer,java.lang. Object),不应消耗任何实体。

我用谷歌搜索过,我发现了这个:Using @Consume with GET request in Jersey Rest

但我宁愿坚持使用 javax api 默认注解 @BeanParam,而且 jersey-container-servlet 依赖项中没有 @InjectParam 这样的注解。

所以我要问的是,有没有在@GET 方法中使用@BeanParam 的方法?如果没有,我如何在不包含hole glassfish-embedded-web 依赖项的情况下包含@InjectParam?

【问题讨论】:

    标签: java rest get jersey jax-rs


    【解决方案1】:

    没关系,我想通了。问题是我的 Resource 接口抽象方法被 @GET、@POST 注释...我把它们撕掉了,它就解决了。还是谢谢

    【讨论】:

      猜你喜欢
      • 2012-08-30
      • 1970-01-01
      • 2017-12-06
      • 2014-10-06
      • 1970-01-01
      • 2015-06-27
      • 1970-01-01
      • 2011-08-02
      • 1970-01-01
      相关资源
      最近更新 更多