¡Hola Yahadad, espero que estés bien!
Tienes toda la razón al considerar que es una buena práctica de programación especificar el tipo genérico en ResponseEntity
. Aunque el código funcionará sin él, incluir el tipo genérico mejora la claridad y la legibilidad del código, además de ayudar a evitar posibles errores en el futuro.
En tu caso, el método gestionarError400
está devolviendo una lista de DatosErrorValidacion
, por lo que sería ideal especificarlo de la siguiente manera:
@ExceptionHandler(MethodArgumentNotValidException.class)
public ResponseEntity<List<DatosErrorValidacion>> gestionarError400(MethodArgumentNotValidException ex) {
var errores = ex.getFieldErrors();
return ResponseEntity.badRequest().body(errores.stream().map(DatosErrorValidacion::new).toList());
}
Al hacer esto, dejas claro que el cuerpo de la respuesta es una lista de objetos DatosErrorValidacion
, lo cual puede ser muy útil para otros desarrolladores que lean tu código o incluso para ti mismo en el futuro.
Espero haber ayudado y buenos estudios!