У меня есть крошечное веб-приложение с index.jsp , которое пересылает (в основном содержит только):
<jsp:forward page="/pages/inputname.jsf" />
web.xml содержит (в дополнение ко всему, что вы ожидаете; см. Больше ниже):
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
inputname.jsp не рендерится (вот URI):
http://localhost:8080/simpleWeb/index.jsp
Страница отображается в браузере (метка, поле ввода ввода, кнопка):
#{msg.prompt} #{personBean.personName} #{msg.button_text}
Я предполагаю, что это потому, что он не проходит через сервлет Faces. Тем не менее, я не уверен, как заставить его пройти. (Обратите внимание, что я где-то в другом месте, с RichFaces и MyFaces, у меня аналогичные проблемы и с файлами .xhtml , но я бы хотел сначала решить этот более простой случай.)
В этом руководстве я использую эти библиотеки (через Maven) в WEB-INF / lib /:
avalon-framework-4.1.3.jar
commons-beanutils-1.7.0.jar
commons-collections-3.2.jar
commons-digester-1.8.jar
commons-logging-1.1.jar
jsf-api-1.2_02.jar
jsf-impl-1.2-b19.jar
jstl-1.1.2.jar
log4j-1.2.12.jar
logkit-1.0.1.jar
servlet-api-2.3.jar
standard-1.1.2.jar
Любая помощь будет принята с благодарностью.
web.xml (да, у него есть заголовок веб-приложения DOCTYPE):
<web-app>
<display-name>Archetype Created Web Application</display-name>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
</web-app>