您好我正在尝试将Tapestry 5.2的快速启动框架复制到eclipse中的Dynamic Web项目中。在快速启动项目中,我可以生成war文件并在Tomcat中运行它,但是当我尝试将依赖项复制到新的Dynamic Web项目时,它会引发异常:
引起:java.lang.ClassNotFoundException: javax.validation.ValidatorFactory
我确实将hibernate验证器复制到了web-inf / lib,但是tapestry却找不到它。 我如何在Tapestry中设置它?
答案 0 :(得分:0)
我不相信这与tapestry或hibernate有任何关系。你的类路径上缺少javax.validation.ValidatorFactory
。此类与JEE6打包在一起,在您的情况下很可能由您的Tomcat版本提供,但不是由您的Eclipse Web Project提供。
您需要告诉Web项目使用JEE6或自己手动将jar添加到项目类路径中。
答案 1 :(得分:0)
这是我发现的一种方式,希望它适合你。
(a)我正在从eclipse indigo运行挂毯。
(b)我获得了tapestry-bin-5.2.6.tar.gz
的副本(c)将上述发行版的lib文件夹中存在的所有文件存储在classpath引用的文件夹(比如foo)中
(d)然后从网上的不同位置获取以下文件并将它们存储在同一文件夹中(foo)
(1)javax.validation-1.0.0.GA.jar(来自http://www.java2s.com/Code/Jar/j/Downloadjavaxvalidation100GAjar.htm)
(2)hibernate-validator-4.2.0.Final和hibernate-validator-annotation-processor-4.2.0.Final
(来自http://sourceforge.net/projects/hibernate/files/hibernate-validator/)
(e)重启eclipse - 它有效!