Почему jsf не может обработать страницы ошибок jsf? - PullRequest
3 голосов
/ 20 октября 2011

У меня есть страница ошибки error.jsf, упомянутая в web.xml:

<error-page>
    <exception-type>javax.faces.application.ViewExpiredException</exception-type>
    <location>/viewExpired.jsp</location>
</error-page>
<error-page>
    <exception-type>java.lang.Throwable</exception-type>
    <location>/error.jsp</location>
</error-page>

Если файл .jsf, страница ошибки не запускается, когда я изменяю ее на .jsp, все в порядке Я также реализовал фильтр, но все еще ничего.

<filter>
    <filter-name>Error</filter-name>
    <filter-class>creazione.exception.MyFilter</filter-class>
</filter>

Это что-то, с чем JSF не может справиться?

UPDATE Код из файла web.xml с отображениями шаблонов URL:

<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>2</load-on-startup>
</servlet>
<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>dispatcher</servlet-name>
    <url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
</servlet-mapping>

1 Ответ

2 голосов
/ 20 октября 2011

Это может произойти, если вы фактически используете Facelets в качестве технологии представления по умолчанию, как это стандартизировано в JSF 2.0. История ваших вопросов также подтверждает, что вы используете Facelets вместо устаревшей JSP. Вы должны сделать эти страницы ошибок также файлами Facelets вместо файлов JSP.

То, что фильтр не "работает", вызвано чем-то другим. Фильтры без проблем работают в сочетании с JSF.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...