使用POST注释获取方法访问失败的请求正文

时间:2018-12-02 21:05:56

标签: java post jersey jax-rs notsupportedexception

我有一个带有REST @POST注释方法的RESTful Web服务,当无法使用请求内容类型时,该方法将引发异常。我想看看到底出了什么问题。为此,我想访问失败的POST调用的所有详细信息,例如正文。为此,我创建了一个@Provider捕获NotSupportedException。我仍然很难找到一种方法来获得所需的细节。我该怎么办?

带@POST注释的方法:

@Path("/language")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public class LanguageResource {
    @POST
    public Response postLanguages(Session session) {
        return Response.status(Response.Status.OK)
                       .entity(Mock.getLanguages())
                       .build();
    }
}

@Provider:

@Provider
public class NotSupportedMapper implements ExceptionMapper<NotSupportedException> {
    @Override
    public Response toResponse(NotSupportedException exception) {
        System.out.println(exception.toString());

        return Response.status(Response.Status.NOT_IMPLEMENTED)
                       .build();
    }
}

0 个答案:

没有答案