Исходный код и сгенерированный вывод HTML выглядят нормально, у вас есть <h:head>
в исходном коде JSF (в противном случае JSF не смог бы автоматически включить какие-либо файлы CSS / JS), а сценарий javax.faces:jsf.js
присутствует в вывод HTML.
Вы сказали, что у вас ошибка JS, что mojarra
не определено. Это может означать только то, что следующий автоматически сгенерированный скрипт
<script type="text/javascript" src="/maze/javax.faces.resource/jsf.js.xhtml?ln=javax.faces">
</script>
не привело к правильному ответу. Это, в свою очередь, может означать только то, что у вас есть Filter
, который сопоставлен с /*
или *.xhtml
, который каким-то образом ограничивает запрос ресурса jsf.js
. Возможно, какой-то собственный аутентификационный фильтр, который не выполняет свою работу полностью правильно. Попробуйте открыть
http://localhost:8080/maze/javax.faces.resource/jsf.js.xhtml?ln=javax.faces
в вашем браузере, чтобы увидеть, что он на самом деле получил (или использовать инструменты веб-разработчика, чтобы проверить ответ). Если это действительно неправильный ответ и проблема действительно в Filter
, то вам, вероятно, нужно переписать его так, чтобы он продолжал цепочку, когда URI запроса начинается с ResourceHandler.RESOURCE_IDENTIFIER
.
1026 * Е.Г. *
HttpServletRequest req = (HttpServletRequest) request;
if (req.getRequestURI().startsWith(req.getContextPath() + ResourceHandler.RESOURCE_IDENTIFIER)) {
chain.doFilter(request, response); // Let it continue.
return;
}