java - 为什么 Java 说我不能将 @NotBlank 与字符串一起使用

标签 java

我有以下代码

import javax.validation.constraints.NotBlank;
...
@NotBlank(message="Not Blank")
private String thing;

当我尝试运行时,我得到了

No validator could be found for constraint 'javax.validation.constraints.NotBlank' validating type 'java.lang.String'

如何对字符串使用 NotBlank 注释?

Java 8

最佳答案

您正在应用的 javax.validation.constraints.NotBlank 注释是 Bean Validation API v2 的一部分。

最可能的情况是:

  • 您的项目依赖于 bean 验证 API v2
  • 实现框架/库仅支持 v1.0/v1.1 API。

请查看此帖子以获取有关现有实现的信息:Is there JSR-303 implementation available?

我建议您检查类路径中的 bean validation API v2(它也可以称为 JSR-380)。我所知道的这个 API 的唯一实现是 Hibernate Validator v6.0。确保 v2 实现未被类路径上的某些 v1.x 实现隐藏。

关于java - 为什么 Java 说我不能将 @NotBlank 与字符串一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47602330/

相关文章:

java - 使用 AsyncHttpClient 接收部分响应正文

java - 在Spring中实例化一个新线程来定期执行任务

java - 在对话框中单击“确定”时获取 Jtextfields 的值

java - 如何使用 DocumentFilter 自动将空字符串更改为 0?

java - GroupLayout 使 Action 监听器失去焦点

java - 返回键关闭任务中注册的所有 Activity

java - 如何在子类中使用父类中创建的对象?

Java/包含/等点类

java - 确定用户的位置并翻译错误消息

java - 带有可编辑文本字段和列表的 JOptionPane 对话框