我抛出一个jax rs BadRequestException(" message")并且我总是得到通用消息,而不是我放在那里的消息。这是为什么? 我使用netbeans和postman chrome扩展程序来测试和查看响应。
答案 0 :(得分:2)
对于要求显示的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();
}
}
&#13;