У меня была такая же проблема и проводилась навсегда, пытаясь понять, что случилось.
Я разработал множество веб-приложений с нуля. Почему вдруг этот человек не сотрудничал?
Одна разница была на этот раз я использовал архетип maven webapp для создания структуры проекта. Он создал файл web.xml, который выглядел так:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>
После того, как я понял, что в моей проблеме, я был уверен, что у меня был ответ. Поэтому я скопировал один из моих 2.5 заголовков web.xml, перестроил и перераспределил. Никакой сигары. Не мог поверить, что это не проблема. Очистил проект, перезапустил tomcat. Неа.
Ответ RHSeeger заставил меня попробовать положить в <% @ page isELIgnored = "false"%>. Это решило проблему. Но я все еще хотел знать, почему для начала начал игнорировать начало.
Я понял, что эль игнорировался из-за чего-то не так с моим web.xml, поэтому я внимательно осмотрел его по сравнению с другим webapp'ом webappapp, который, как я знал, работал нормально. Нет заметных различий.
После этого я удалил <% @ page isELIgnored = "false"%> из моего JSP и перераспределился, считая, что el не будет оцениваться снова, но, к моему удивлению, el был оценен отлично!
Затем, полагая, что это должна быть какая-то проблема с кешированием, я отключил свои изменения в web.xml, чтобы воссоздать проблему. Я перераспределился, но все же эль оценивалась правильно, даже с плохим web.xml. Затем я очистил весь проект (я использую разнесенное развертывание), сдувая взорванный каталог и воссоздавая его. Затем я перезапустил tomcat. Тем не менее, эль, похоже, правильно оценивался, несмотря на плохой web.xml.
Наконец-то меня осенило.Я просто добавил пространство в какое-то место в JSP, переупаковал его и обновил страницу. Бинго! Теперь эль не оценивался.
Таким образом, проблема была с web.xml. Это еще больше осложнило бы тот факт, что JSP не перекомпилировались, если они не изменились. Не уверен, что tomcat использует сумму MD5, чтобы решить, нужно ли перекомпилировать JSP или что. Другая возможность заключается в том, что я использую плитки, которые, как я знаю, имеют механизм кэширования, но я бы не ожидал, что вы продолжите перезапуск tomcat.
В любом случае, если вы не измените свои JSP ПОСЛЕ исправления файла web.xml, все ставки будут отключены, будет ли EL снова работать. Надеюсь, это избавит кого-то еще от головной боли. Мне также интересно, может ли кто-нибудь сказать мне, было ли это не рекомпиляция JSP или кеширование кеширования вывода JSP. Я уверен, что это перекомпиляция, потому что во время компиляции JSP должен выяснить, что делать с выражениями $ {} el, правильно? Плитки не могут кэшировать то, что подставляется в выражения el, иначе возникнут всевозможные проблемы.
На сервере Tomcat 5.5, есть две возможные причины (только?): Неверная схема в web.xml, или el- игнорируется опция конфигурации. –
У меня (и других) была хорошая работа на одной странице, и после изменения чего-либо на странице (т. Е. Добавления некоторого html), она просто перестает оценивать выражения EL. Единственное объяснение, которое я могу придумать, - это ошибка в Tomcat где-то, но не стоит углубляться слишком глубоко, поскольку включение ее вручную (через код выше) решает проблему. – RHSeeger
Если вы создали свой webapp с архетипом maven, правильный ответ таков: http://stackoverflow.com/a/25372735/20654 – OscarRyz