У меня есть приложение JSF, которое использует jsf 2.2.18 и richfaces 4.5.16, и я пытаюсь настроить функции CSRF спецификации JSF 2.2.
Я определил список страниц защищенного просмотра в моем файле Faces-config.xml
<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd" version="2.1"> <protected-views> <url-pattern>/pc/audit/historyResults.xhtml</url-pattern> <url-pattern>/pc/audit/historySearch.xhtml</url-pattern> </protected-views> </faces-config>
И мой web.xml определяет файл приветствия как
<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" id="WebApp_ID" version="2.5"> <welcome-file-list> <welcome-file>welcome.xhtml</welcome-file> </welcome-file-list>
При доступе к приложению и попытке открыть страницу 'pc / audit / historyResults.xhtml' я получаю
jsf.lifecycle.invalid.referer=JSF1099: Referer [sic] header value 'http://localhost/context/pc/welcome.xhtml' does not appear to be a protected view. Preventing display of 'http://localhost/context/pc/audit/historyResults.xhtml'
Если я добавлю /pc/welcome.xhtml 'к защищенным видам, ядаже не могу получить доступ к странице приветствия, так как javax.token не был сгенерирован.
Есть какой-то шаг конфигурации, который я здесь пропускаю?