Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Bean Validation em versões mais atuais do Spring Boot

Como fazer bean validation para a versão 2.3.0.RELEASE do Spring Boot? Não consigo importar as classes do pacote javax.validation.constraints e consequentemente não consigo utilizar as notações @NotNull, @NotEmpty, etc

5 respostas

Oi Livia,

O suporte deveria continuar o mesmo, independente da versão do Spring Boot.

Talvez tenha dado algum problema no seu projeto ao baixar as dependências do bean validation.

Poste aqui o conteúdo do seu arquivo pom.xml para eu dar uma analisada.

4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.4.RELEASE br.com.alura forum 0.0.1-SNAPSHOT forum Demo project for Spring Boot

<properties>
    <java.version>1.8</java.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- reinicia automaticamente a cada alteracao -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
    </dependency>

    <!-- JPA - acesso a dados pelo Java. Hibernate é o padrão -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>

    <!-- banco de dados em memória - H2 -->
    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

Tentei substituir a versão 2.1.4.RELEASE pela 2.3.0.RELEASE

solução!

Oi Livia,

Dei uma pesquisada e descobri que a partir da versão 2.3.0 do Spring Boot o Bean Validation não é mais adicionado automaticamente ao utilizar o modulo starter-web.

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3-Release-Notes#validation-starter-no-longer-included-in-web-starters

Você precisa então adicionar mais essa dependência no pom.xml:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency>

Bons estudos!

Isso tem cara de outro problema.

Qual IDE você está utilizando?

Execute o comando mvn clean package