package io.dropwizard.hibernate; import org.hibernate.exception.DataException; import javax.ws.rs.core.Response; import javax.ws.rs.ext.ExceptionMapper; import javax.ws.rs.ext.Provider; import io.dropwizard.jersey.errors.ErrorMessage; @Provider public class DataExceptionMapper implements ExceptionMapper<DataException> { @Override public Response toResponse(DataException e) { String message = e.getCause().getMessage().contains("EMAIL") ? "Wrong email" : "Wrong input"; return Response.status(Response.Status.BAD_REQUEST) .entity(new ErrorMessage(Response.Status.BAD_REQUEST.getStatusCode(), message)) .build(); } }