2

我想使用Hibernate Validator 的方法参数验证功能。从我在文档中读到的内容来看,Hibernate Validator 只是提供了一个 API,我需要Seam Validation@AutoValidating的注释才能使事情正常进行。

但是,我想在 Java EE 容器之外使用 methd 参数验证,用于普通方法,例如在实用程序类中。

什么设置才能让它工作?

4

2 回答 2

1

为了使用方法验证,您需要某种容器来创建和管理您的对象,但它不一定是 Java EE。

如果你在 Java SE 中运行,你可以使用 CDI 和 Seam Validation(CDI 参考实现Weld可以在 SE 上使用)或者 Spring 框架,这篇文章给出了很好的概述。

在 GitHub 上,您还可以找到我的一个项目,展示了方法验证与 Google Guice 以及 JDK 动态代理的集成。

于 2013-01-26T08:44:57.947 回答
0

可以在成熟的 Java EE 容器之外构建基于 Seam 的应用程序,例如使用 Tomcat 等 Web 容器。但无论如何,Seam至少必须在一个 Web 容器中运行,你不能在外部将它用于独立应用程序(毕竟 Seam 是一个Web 应用程序框架)。如果您只需要验证,请考虑使用更简单的方法 - 例如,尝试 Apache 的commons validator

于 2013-01-25T21:14:49.203 回答