Google App Engine上的Jersey错误

时间:2011-05-25 20:14:00

标签: java google-app-engine jersey

在我的java应用程序中,我使用Jersey进行REST服务。一切 工作完美,但我得到这个消耗大量CPU的错误 (13830cpu_ms)并冻结应用程序几秒钟。

com.sun.jersey.core.spi.component.ProviderFactory __getComponentProvider: The provider c     
class, class com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$App, could not be
instantiated. Processing will continue but the class will not be utilized
java.lang.SecurityException: Unable to get members for class  
  com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$App
    at com.google.appengine.runtime.Request.process-d73c0d822f527031(Request.java)
    at java.lang.Class.getDeclaredMethods(Class.java:252)

知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

@Drew Sears:谢谢,但是错误发生在Jersey代码中 - 而不是我的,所以没有代码可以显示。

最后我发现了问题:我只使用像jersey-core-1.7.jar这样的球衣库。这很好,应用程序将仅使用此库来使用REST服务,但如果我生成JSON,它将搜索提供JSON数组提供程序的jackson库。

通过简单地添加jackson * .jar库,问题就消失了。