ОБНОВЛЕНИЕ
Следуя совету, который мне дали, я решил развернуть меньший проект только с классом, вызывающим эту строку:
_cache = MemcacheServiceFactory.getMemcacheService();
Теперь я получаю эту ошибку:
java.lang.NoClassDefFoundError: com/google/appengine/api/memcache/MemcacheServiceFactory
Я прочитал здесь, что это потому, что мне не хватает appengine-api-1.0-sdk.jar
но здесь там написано нет необходимости включать его.
Теперь моя проблема заключается в том, что если я попытаюсь включить его в развертывание, добавив в каталог WEB-INF\lib, он будет проигнорирован. Если я попытаюсь использовать другой jar (не связанный с GAE ) он прекрасно развертывается.
Например, обе эти версии имели appengine-api-1.0-sdk.jar
в \lib, но версия 5 также имела другую банку (bcprov-jdk15on-147.jar
). Разница в размерах между этими двумя из-за этого.
Подводя итог, мой вопрос: следует ли развертывать appengine-api-1.0-sdk.jar
? И если да, то как мне избежать игнорирования?
Ссылка на файл .rar с проектом.
Зависимости проекта, они являются зависимостями по умолчанию для веб-приложения, которое будет развернуто в GAE из NetBeans.
Я пытаюсь внедрить Memcache, чтобы использовать тот, который предоставляется GAE, при развертывании приложения.
После его развертывания, когда я пытаюсь запустить его, я получаю IllegalStateException
:
java.lang.IllegalStateException: Committed
Это происходит в этой строке:
private MemcacheService _cache=MemcacheServiceFactory.getMemcacheService();
Что я могу сделать, чтобы это исправить?
System.out.println
до и после этой строки кода, а следующая никогда не печатается, а предыдущая печатается. Остальная часть кода использует_cache
- person moondaisy   schedule 12.09.2016