5

好的,我正在尝试让验证器与 jsp 表单一起工作。刚开始使用 maven,所以它有点新...找到我应该为上述课程选择的存储库的最佳方法是什么?我已经有以下验证条目:

    <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>1.0.0.GA</version>
    </dependency>


    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator-annotation-processor</artifactId>
        <version>4.1.0.Final</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>4.1.0.Final</version>
    </dependency>   

我尝试加载休眠本身,但这破坏了构建:我使用 eclipse 进行持久性,并且在拖入大量必备库后构建失败。

我认为我应该得到一个更好的策略,而不是仅仅使用存储库。

只是要清楚:我收到错误:

java.lang.NoClassDefFoundError:无法初始化类 org.hibernate.validator.engine.ConfigurationImpl

这应该在 hibernate-validator 依赖项中,所以不会像我期望的那样表现。

4

2 回答 2

5

类路径上是否有 slf4j-api(这应该由 HV 引入,但只是为了确保)?

NoClassDefFoundError 并不意味着 ConfigurationImpl 不可用,而是无法加载(通常是由于静态初始化程序中的问题或加载的类的导入不可用)。

关于使用注解处理器的附注:除了将其添加为项目依赖项之外,您还可以通过 Maven 注解处理器插件使用它。这样您就不会在项目中意外地从中导入类。Hibernate Validator参考指南中详细描述了设置。

于 2011-05-27T19:37:51.293 回答
3

OP 可能不再需要它,但也许其他人会。

我在 Hibernate Validator 4.3 Final 和 slf4j 1.5.11 的组合中遇到了类似的问题最后我找到了两个愿意一起工作的版本,即:-Hibernate Validator Final 4.2 -slf4j 1.6.6

于 2012-08-23T00:36:14.833 回答