2014-09-22 47 views
1

我創建了不同的方法來驗證SOAP和REST服務中是否有空字段。皁我用這樣的:使用REST和SOAP驗證空字段的相同方法

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

休息我做了這個:

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

} 

這意味着我有@Context HttpServletResponse的響應,在休息的參數並沒有什麼對SOAP,因爲它是一個例外。還有其他方法可以使用SOAP和REST的相同方法驗證空字段嗎?

回答

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(); 
    } 
}