2010-01-12 49 views
1

我想用Spring 3.x驗證。休眠驗證和Spring 3.x

我已經註釋的方法場@Valid,加<mvc:annotation-driven/>common.xml,並在lib/目錄添加Hibernate-Validator.jar,但我不斷收到這樣的信息:"Hibernate validator not found: ignoring"

我錯過了什麼嗎?

[Version:15] Hibernate Annotations 3.4.0.GA 
    [Environment:543] Hibernate 3.3.0.SP1 
    [Environment:576] hibernate.properties not found 
    [Environment:709] Bytecode provider name : javassist 
    [Environment:627] using JDK 1.4 java.sql.Timestamp handling 
    [Version:14] Hibernate Commons Annotations 3.1.0.GA 
    [AnnotationConfiguration:369] Hibernate Validator not found: ignoring 
+0

你有哪個版本的Hibernate-validator? – Bozho 2010-01-12 15:18:01

+0

嗨,我有路徑上的那個JAR:hibernate-validator-4.0.2.GA.jar – 2010-01-12 16:08:40

回答

0

最後,我找到了答案,在Spring ROO Issue Tracker

它是在Hibernate中的一個錯誤就是 已知的Hibernate 3.5

予以糾正我在春天也已經此消息項目,但驗證仍然有效。

1

這意味着,Hibernate無法找到類org.hibernate.validator.ClassValidatororg.hibernate.validator.MessageInterpolator,暗示有一個問題與庫版本classpath中。

我看你使用以下版本:

  • Hibernate註解3.4.0.GA
  • 休眠3.3.0.SP1
  • 休眠共享註釋3.1.0.GA

而你的JAR是hibernate-validator-4.0.2.GA.jar。你確定所有這些版本都相互兼容嗎?

請嘗試下載不同Hibernate組件的最新版本,將它們放入您的類路徑中,並查看錯誤是否仍然存在。

+0

嗨,謝謝你的回覆!嗯..我找不到你命名的課程。他們應該在哪個JAR中?否則,我似乎擁有所有最新版本:hibernate-validator-4.0.2.GA.jar,hibernate-annotations-3.4.0.GA和核心distrib:hibernate-distribution-3.3.2.GA。 – 2010-01-12 16:42:33

+0

奇怪的是,它仍然在啓動過程中晚些時候找到驗證程序: [SchemaUpdate:183]架構更新完成 [版本:56] Hibernate驗證器4.0.2.GA [DefaultTraversableResolver:89]實例化一個實例org.hibernate.validator.engine.resolver.JPATraversableResolver。 – 2010-01-12 16:43:57

+0

上述類應該在hibernate-validator * .jar中。你是否部署在應用服務器中?也許它帶有一個不兼容的Hibernate版本。只是一個猜測。 – torbengee 2010-01-12 19:06:50