Skip to content

[#19] Manejo global de excepciones y respuestas HTTP coherentes

federico.dominguez requested to merge feature/global-exception-handler into develop

Issue #19 (closed) - Manejo global de excepciones

Cambios

Nuevos

  • ApiErrorResponse record con: status, error, message, path, timestamp, fieldErrors
  • FieldErrorItem record para errores de validación por campo
  • GlobalExceptionHandlerTest: 3 tests de integración

Modificados

  • GlobalExceptionHandler: refactor completo
    • Todos los handlers devuelven ApiErrorResponse
    • Logging WARN para 4xx (con path y detalles)
    • Logging ERROR con stack trace para 5xx
    • MethodArgumentNotValidException → field errors detallados
    • ConstraintViolationException → nuevo handler
    • Path extraído de HttpServletRequest
  • SwaggerConfig: actualizado a ApiErrorResponse

Eliminados

  • ApiError.java (reemplazado por ApiErrorResponse)

Tests

  • 3 tests de integración (400 con field errors, 404 con path, 500 sin stack trace)
  • Todos los tests existentes siguen pasando (29/29)

Closes #19 (closed)

Merge request reports

Loading