Hibernate:org.glassfish.jersey.server.ContainerException:java.lang.NoSuchFieldError:NONE [英] Hibernate : org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: NONE

查看:160
本文介绍了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屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆