1

我做了一个 JAX-RS 服务。它通过 POST 请求消耗/生成 json。除了 bean 验证,一切正常

我从包中添加了一些约束javax.validation.constraints到我的 POJO 的字段中,它们用作请求/响应消息的包装器。(POJO 没有任何其他注释,如 JAXB @XmlRootElement 或其他)

如果我尝试调用我的服务 - 它可以工作,但完全忽略了约束。即,我使用正确或错误的参数调用我的服务,并在这两种情况下调用将 RAX-RS 层传递给我的 EJB。

我能错过什么?一些特殊的配置,一些特殊的依赖?

PS 我使用 glassfish 4.0 和提供的 Jersey 2.0

4

1 回答 1

1

为了调用 bean 验证,您需要在类路径上有一个验证器。常用的验证器是hibernate-validator参考实现。

http://www.hibernate.org/subprojects/validator.html

一旦您在类路径上拥有验证器,就会在遇到 JSR-303 注释时检测并调用它。

于 2013-09-10T23:23:18.070 回答