Hibernate:org.glassfish.jersey.server.ContainerException:java.lang.NoSuchFieldError:NONE [英] Hibernate : org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: NONE
问题描述
我已经在Google App Engine上部署了REST Services(泽西岛)。我使用Hibernate 4.2.0作为JPA和MySQL数据库。当我在本地系统上运行它时,我的应用程序运行良好。但是,如果我部署它并在Google App Engine上运行,则会出现以下错误:
org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError:NONE
at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:256)
at org.glassfish.jersey.servlet.internal.ResponseWriter.failure (ResponseWriter.java:238)
在org.glassfish.jersey.server.ServerRuntime $ Responder.process(ServerRuntime.java:439)
在org.glassfish.jersey.server.ServerRuntime $ 1.run( ServerRuntime.java:277)
在org.glassfish.jersey.internal.Errors $ 1.call(Errors.java:271)
在org.glassfish.jersey.internal.Errors $ 1.call(错误。
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
在org.glassfish.jersey.internal.Errors.process(Errors.java:267)
在org.glassfish.jersey.process.internal.RequestScope.runInScope (RequestScope.java:297)
在org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:254)
在org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java :1028)
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:372)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:381)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:344)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:221)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166)
at com。 google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)
Th ese是构建构建路径的一部分:
jar文件:
JPA2中的新成员
,我怀疑你的 classpath
在某处也有 JPA1
。找到并删除它。
现在支持 JPA 1.0
和 JPA 2.0 在
GAE
。
看一下配置 JPA 2.0
此处和< href =https://developers.google.com/appengine/docs/java/datastore/jpa/overview =nofollow> here 。
I have deployed REST Services (Jersey) on Google App Engine. I'm using Hibernate 4.2.0 as JPA with MySQL Database. My application runs perfectly fine when I run it on my local system. But gives the following error if I deploy it and run on Google App Engine:
org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: NONE
at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:256)
at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:238)
at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:439)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:297)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:254)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:372)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:381)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:344)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:221)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
These are the jars that are part of build path:
jars in my lib folder:
Since 'NONE' is new in JPA2
, I suspect you also have JPA1
on your classpath
somewhere. Find and remove it.
Now there is a support for JPA 1.0
and JPA 2.0
in GAE
.
Have a look to configure JPA 2.0
here and here.
这篇关于Hibernate:org.glassfish.jersey.server.ContainerException:java.lang.NoSuchFieldError:NONE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!