使用REST和SOAP验证空字段的方法相同

时间:2014-09-22 11:10:41

标签: java web-services rest soap

我创建了不同的方法来验证SOAP和REST服务中是否存在空字段。对于肥皂我使用这样的东西:

 if (fornecedor.isEmpty()) {            
            throw new BadRequestException(error + " fornecedor");
        } 

对于REST我做了这个:

 if (fornecedor.isEmpty()) {
            response.sendError(HttpServletResponse.SC_BAD_REQUEST, ERROR + " fornecedor");

}

这意味着我将@Context HttpServletResponse响应作为Rest中的参数而在SOAP上没有任何内容,因为它是一个例外。还有其他方法可以使用相同的SOAP和REST方法验证空字段吗?

1 个答案:

答案 0 :(得分:1)

Jersey允许您将自定义例外映射到响应。 相关文档在这里: https://jersey.java.net/documentation/latest/representations.html#d0e5199

示例映射:

@Provider
public class BadRequestExceptionMapper implements ExceptionMapper<BadRequestException>  {
  public Response toResponse(BadRequestException ex) {
    return Response.status(404).
      entity(ex.getMessage()).
      type("text/plain").
      build();
  }
}