Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java springMvc和hibernate持久性_Java_Hibernate_Jpa - Fatal编程技术网

Java springMvc和hibernate持久性

Java springMvc和hibernate持久性,java,hibernate,jpa,Java,Hibernate,Jpa,当我试图单击“保存”在数据库中插入数据时,“保存”按钮出错。 我不知道少了哪个图书馆。。。。我仍然包括了所有的spring和hibernate持久性库。 任何人都可以帮助我 HTTP Status 500 - The server encountered an internal error () that prevented it from fulfilling this request. exception: org.springframework.web.util.NestedSer

当我试图单击“保存”在数据库中插入数据时,“保存”按钮出错。 我不知道少了哪个图书馆。。。。我仍然包括了所有的spring和hibernate持久性库。 任何人都可以帮助我

HTTP Status 500 - 

The server encountered an internal error () that prevented it from fulfilling this request.

exception:

org.springframework.web.util.NestedServletException: Handler processing failed; nested     exception is java.lang.NoSuchMethodError:     javax.persistence.Persistence.getPersistenceUtil()Ljavax/persistence/PersistenceUtil;
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:839)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

root cause 

java.lang.NoSuchMethodError: javax.persistence.Persistence.getPersistenceUtil()Ljavax/persistence/PersistenceUtil;
org.hibernate.validator.engine.resolver.JPATraversableResolver.isReachable(JPATraversableResolver.java:62)
org.hibernate.validator.engine.resolver.DefaultTraversableResolver.isReachable(DefaultTraversableResolver.java:94)
org.hibernate.validator.engine.resolver.SingleThreadCachedTraversableResolver.isReachable(SingleThreadCachedTraversableResolver.java:47)
org.hibernate.validator.engine.ValidatorImpl.isValidationRequired(ValidatorImpl.java:757)
org.hibernate.validator.engine.ValidatorImpl.validateConstraint(ValidatorImpl.java:324)
org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForRedefinedDefaultGroup(ValidatorImpl.java:273)
org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForCurrentGroup(ValidatorImpl.java:256)
org.hibernate.validator.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:210)
org.hibernate.validator.engine.ValidatorImpl.validate(ValidatorImpl.java:119)
org.springframework.validation.beanvalidation.SpringValidatorAdapter.validate(SpringValidatorAdapter.java:86)
org.springframework.validation.DataBinder.validate(DataBinder.java:692)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.doBind(HandlerMethodInvoker.java:807)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:359)
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:171)
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:426)
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:414)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.

Apache Tomcat/6.0.20

那不是丢失的图书馆。这是版本不匹配。您的JPA api版本似乎与Hibernate版本不兼容


快速比较和之间的
javax.persistence.persistence
,可以清楚地看出
getPersistenceUtil()
方法是在6中添加的。如果您一直使用JavaEE5服务器/库,那么您必须使用适当版本的Hibernate或HibernateJAR寻找的任何方法。它似乎来自hibernate验证器。

我使用的是hibernate-jpa-2.0-api-1.0.0.Final.jar,hibernate版本是3.3.2.GA,如果不匹配,我会检查您的类路径,并找到任何其他可能干扰的
javax.persistence.persistence
类,因为您的错误显示是hibernate-jpa-2.0-api-1.0.0.Final.jarmissing.Hmm,我想也有一点可能,您正在进行一些疯狂的类加载,并且正在加载两个版本的
PersistenceUtil
,这也可以解释这个错误。我已经包括了javax.persistence\u 2.0.0,但我从类路径中删除了它,但它仍然给了我相同的错误。。。。现在包括的jar有ejb3-persistence-1.0.2.GA.jar、hibernate-validator-4.1.0.Final.jar、javax.validation-1.0.0.GA.jar。谢谢Ryan。我的问题解决了。实际上,我是因为ejb3-persistence-1.0.2.GA而被拒绝的……所以我删除了,错误消失了……非常感谢