java.lang.NoSuchFieldError: deferredExpression
в apache.taglibs.standard.tag.common.core.ForEachSupport.release (ForEachSupport.java:212)
Ваш путь к классу загрязнен различными версиями реализации JSTL. Это конкретное исключение означает, что у вас есть и jstl-1.2.jar
файл JSTL 1.2, и standard.jar
файл JSTL 1.1 или 1.0 в пути к классам. Это поле введено в JSTL 1.2, а класс ForEachSupport
присутствует в обоих файлах JAR. Очевидно, что в какой-то момент один из standard.jar
был загружен и использован, но в JVM-памяти все еще есть API JSTL 1.2.
Решение состоит в том, чтобы удалить standard.jar
. Вам вообще не нужно это для JSTL 1.2.
Смотри также:
Обновление : согласно комментариям, вам действительно нужно удалить jstl-1.2.jar
, потому что версия GAE / Jetty, совместимая с Servlet 2.5, очевидно уже поставляется с JSTL 1.1 из коробки. Это противоречило JSTL 1.2. в вашем веб-приложении.