Skip to content
Snippets Groups Projects

feat: reply with HttpStatus 400 and SAX messsage on metadata parsing exception

Merged Mathieu.Vonlanthen requested to merge MVO-400-with-SAX-message into master
3 files
+ 51
2
Compare changes
  • Side-by-side
  • Inline
Files
3
package ch.unige.aou.controlleradvice;
import static ch.unige.solidify.controller.SolidifyControllerAdvice.StackTraceDisplay.WITH_STACK_TRACE;
import javax.servlet.http.HttpServletRequest;
import org.springframework.boot.web.servlet.error.ErrorAttributes;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import ch.unige.solidify.controller.SolidifyControllerAdvice;
import ch.unige.solidify.repository.SolidifyError;
import ch.unige.solidify.service.MessageService;
import ch.unige.aou.exception.AoUMetadataParseException;
@ControllerAdvice
public class AoUControllerAdvice extends SolidifyControllerAdvice {
public AoUControllerAdvice(ErrorAttributes errorAttributes, MessageService messageService) {
super(errorAttributes, messageService);
}
@ExceptionHandler(AoUMetadataParseException.class)
public ResponseEntity<SolidifyError> handleException(AoUMetadataParseException exception, HttpServletRequest request) {
String message = "";
if(exception.getCause() != null) {
message = exception.getCause().getMessage();
}
return this.buildResponse(exception, request, message, HttpStatus.BAD_REQUEST, WITH_STACK_TRACE);
}
}
Loading