Ошибка Джерси в Google App Engine - PullRequest
0 голосов
/ 26 мая 2011

В моем Java-приложении я использую Джерси для REST-сервисов.Все работает отлично, но я получаю эту ошибку, которая потребляет много процессора (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 голосов
/ 29 мая 2011

@ Дрю Сирс: спасибо, но ошибка возникает в коде Джерси - не мой, поэтому нет кода для показа.

Наконец-то я нашел проблему: я использую только библиотеки джерси, такие как jersey-core-1.7.jar. Это нормально, и приложение будет запускать службы REST только с этими библиотеками, но если я сгенерирую JSON, оно будет искать библиотеку Джексона, которая предоставляет провайдер массива JSON.

Простым добавлением Джексона * .jar libs проблема исчезла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...