Таким образом, выражения EL не оцениваются, и вы видите #{UserBean.userName}
на веб-странице вместо оцененного значения?
Убедитесь, что заявлено, что web.xml
соответствует максимально поддерживаемой версии сервлета, поддерживаемой веб-контейнером. Для JSF 1.2 и 2.0 требуется как минимум Servlet 2.5. JSF 2.1 требует минимум Servlet 3.0. Версия Servlet связана с используемой версией EL. JSF 1.2 / 2.0 опирается на новый "Unified EL" (EL 2.1), который является частью Servlet 2.5.
Я предполагаю, что Servlet 2.5, вот как должно выглядеть корневое объявление web.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<!-- Your config here -->
</web-app>
Немного приличная IDE может автоматически сгенерировать его для вас, если вы правильно настроили проект как проект Servlet 2.5 и выбрали контейнер, совместимый с Servlet 2.5, такой как Tomcat 6.0.