Saltar al contenido

¿Cómo validar la respuesta de Spring Boot Rest?

Te damos la bienvenida a nuestra página web, aquí vas a encontrar la solucíon a lo que buscas.

Solución:

Validador de respuesta implementado:

@Aspect
@Component
public class ControllerResponseValidator 

    Logger logger = Logger.getLogger(ControllerResponseValidator.class);

    @Autowired
    private Validator validator;

    @AfterReturning(pointcut = "execution(* com.example.controller.*.*(..))", returning = "result")
    public void validateResponse(JoinPoint joinPoint, Object result) 
        validateResponse(result);
    

    private void validateResponse(Object object) 

        Set> validationResults = validator.validate(object);

        if (validationResults.size() > 0) 

            StringBuffer sb = new StringBuffer();

            for (ConstraintViolation error : validationResults) 
                sb.append(error.getPropertyPath()).append(" - ").append(error.getMessage()).append("n");
            

            String msg = sb.toString();
            logger.error(msg);
            throw new RestException(HttpStatus.INTERNAL_SERVER_ERROR, msg);
        
    


Recuerda que puedes dar difusión a este post si te valió la pena.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Respuestas a preguntas comunes sobre programacion y tecnología