Выражения EL не оцениваются в JBoss AS 4.2.2

EL выражения не оцениваются в JBoss AS 4.2.2. У меня web.xml объявлено соответствие спецификации Servlet 2.4.

<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

Что нужно сделать больше, чтобы заставить EL работать в JBoss AS 4.2.2?

Ответ 1

Ваше корневое объявление web.xml выглядит нормально.

Другие причины для исключения:

  • Убедитесь, что у вас нет библиотек Servlet/JSP/EL другого сервлетаконтейнера make/version в вашем webapp /WEB-INF/lib, например servlet-api.jar, jsp-api.jar, el-api.jar и т.д. Чаще всего стартеры бросают копию этих файлов с неизвестного ресурса там, чтобы преодолеть проблемы компиляции, но это неправильный подход!

  • Убедитесь, что у вас нет <%@page isELIgnored="true" %> в ваших JSP.

  • Убедитесь, что в вашем web.xml не указано следующее:

    <jsp-config>
        <el-ignored>true</el-ignored>
    <jsp-config>
    

Ответ 2

Добавить

<%@page isELIgnored="false" %> 

в вашем JSP.

У меня была аналогичная проблема с Tomcat 6. Хотя EL не был отключен глобально (через web.xml). Мне пришлось индивидуально включить EL в мои JSP через приведенное выше утверждение.