Java 即使代码看起来很好,Spring验证也不起作用

Java 即使代码看起来很好,Spring验证也不起作用,java,spring,spring-boot,spring-mvc,thymeleaf,Java,Spring,Spring Boot,Spring Mvc,Thymeleaf,我刚开始用javax.validation.constraints测试验证,我认为我做得很好,但不知怎么的,它不起作用。我看了这么长时间的代码,没有发现任何错误。当我键入错误的名称数据进行表单和提交时,错误文本不会弹出,(errors.hasErrors())为false,这意味着没有任何错误 这是我的班级: @Data public class Application { private int id; @NotNull(message = "Nazwa wymag

我刚开始用javax.validation.constraints测试验证,我认为我做得很好,但不知怎么的,它不起作用。我看了这么长时间的代码,没有发现任何错误。当我键入错误的名称数据进行表单和提交时,错误文本不会弹出,(errors.hasErrors())为false,这意味着没有任何错误

这是我的班级:

@Data
public class Application {
    private int id;

    @NotNull(message = "Nazwa wymagana!")
    @Size(min=2, message = "Name should have at least 2 characters!")
    @Size(max=30, message = "Name too long!")
    private String name;

    private String domain;
    private List<Person> users;
}
表格:


波普拉·博伊迪·斯普罗布吉·波诺尼。
Nazwa aplikacji
名称错误
多梅纳aplikacji

问题可能是相互冲突的依赖项。如果您使用的是spring boot,则可以在pom.xml文件上添加此依赖项:

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

org.springframework.boot
弹簧启动启动器验证
确保删除其他hibernate或javax验证依赖项


还要确保使用了正确的注释。它们都应该来自
javax.validation.constraints.*

更详细地描述“不工作”。什么是错误和模型?在您提供的代码中,似乎一切正常。
<form action="#" th:action="@{/applications/add}" th:object="${app}" method="post">
    <div th:if="${#fields.hasErrors()}">
          <span>
             Proszę popraw błędy i spróbuj ponownie.
          </span>
    </div>
    <div>
        <label for="nameeee">Nazwa aplikacji</label>
        <input type="text" th:field="*{name}" id="nameeee" placeholder="Nazwa"/>
        <span th:if="${#fields.hasErrors('name')}" th:errors="*{name}">Name Error</span>
    </div>
    <div>
        <label for="domain">Domena aplikacji</label>
        <input type="text" th:field="*{domain}" id="domain" placeholder="Domena"/>
    </div>
    <input type="submit" value="Dodaj aplikację!">
</form>
<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-validation</artifactId> 
</dependency>