【发布时间】:2015-06-08 14:52:42
【问题描述】:
我正在抛出一个 jax rs BadRequestException("message") 并且我总是得到通用消息,而不是我放在那里的消息。这是为什么? 我正在使用 netbeans 和 postman chrome 扩展来测试并查看响应。
【问题讨论】:
标签: jax-rs
我正在抛出一个 jax rs BadRequestException("message") 并且我总是得到通用消息,而不是我放在那里的消息。这是为什么? 我正在使用 netbeans 和 postman chrome 扩展来测试并查看响应。
【问题讨论】:
标签: jax-rs
为了在您请求时显示 BadRequestException("message"),您需要一个实现 ExceptionMapper 的额外类。在我学会了创建自己的自定义异常类之后学到了这一点。我必须跳过他们在我的书中解释的部分。无论如何,这就是它的样子。
import javax.ws.rs.BadRequestException;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
@Provider
public class BadRequestExceptionMapper implements ExceptionMapper < BadRequestException > {
@Override
public Response toResponse(BadRequestException exception) {
return Response.status(Status.BAD_REQUEST).type(MediaType.TEXT_PLAIN).entity(exception.getMessage()).build();
}
}
【讨论】: