package org.gcube.data_catalogue.grsf_publish_ws.ex; import javax.validation.ConstraintViolation; import javax.validation.ConstraintViolationException; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import javax.ws.rs.ext.ExceptionMapper; import javax.ws.rs.ext.Provider; @Provider /** * Exception thrown on fail * @author Costantino Perciante at ISTI-CNR */ public class ValidationException implements ExceptionMapper { @Override public Response toResponse(javax.validation.ValidationException e) { final StringBuilder strBuilder = new StringBuilder(); for (ConstraintViolation cv : ((ConstraintViolationException) e).getConstraintViolations()) { strBuilder.append(cv.getPropertyPath().toString() + " " + cv.getMessage()); } return Response .status(Response.Status.INTERNAL_SERVER_ERROR.getStatusCode()) .type(MediaType.APPLICATION_JSON) .entity(strBuilder.toString()) .build(); } }