4

我有带有@Valid注释的控制器方法来强制执行 JSR303 Bean 验证。

但当我只是给@Valid是表演”

This annotation @Valid is disallowed for this location

我可以通过给出完整的包路径来摆脱这个@javax.validation.Valid。如果我使用它,它不会显示上述消息。

我的问题是,是否有任何冲突迫使我提供完整的包名?还是缺少一些罐子?

@Valid如果验证工作正常,我不会问这个问题。但它也不起作用,尽管没有编译或运行时错误。它只是没有触发。

我在另一个线程中发布了这个问题

4

2 回答 2

3

看看你的进口。我猜你javax.validation.Valid只是使用@Valid.

于 2013-04-29T21:25:18.523 回答
0

您需要导入以下软件包才能@Valid工作@Size

import javax.validation.Valid;
import javax.validation.constraints.Size;

下面给出了工作所需的必要罐子:

  • 同学-1.0.0.jar
  • hibernate-validator-5.1.3.Final.jar
  • javax.el-2.2.4.jar
  • javax.el-api-2.2.4.jar
  • jboss-logging-3.1.3.GA.jar
  • 验证-api-1.1.0.Final.ja

您可以从http://hibernate.org/validator/下载上述 jars

于 2016-06-23T22:10:33.507 回答