@vetalmatitskiy
testing engineer

Как исправить ситуацию, когда GlassFish не обрабатывает JSF-страницы?

Доброго дня, уважаемые Java-гуру,
делаю простое веб-приложение на Java в NetBeans, добавил в проект поддержку JavaServer Faces. Проект компилируется и запускается, но при запросе jsf-страниц в браузере отображается пустой экран. Зайдя в исходный код страницы я увидел, что там остались необработанной вся разметка JavaServer Faces. Подскажите, пожалуйста, что можно прописать чтоб сервер все же обрабатывал JSF-страницы?
  • Вопрос задан
  • 594 просмотра
Пригласить эксперта
Ответы на вопрос 3
@bromzh
Drugs-driven development
<!-- JSF mapping -->
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!-- Map these files with JSF -->
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>

Добавь это в web.xml
Ответ написан
Комментировать
timych
@timych
Я давно ковырялся с .jsf, но насколько помню если не сконфигурить маппинг к Faces Servlet в web.xml, то по дефолту для того чтобы faces заработал нужно в пути к jsp/xtml файлу вставлять "faces". Например localhost:8080/faces/mypage.jsp
В противном случае faces не отрабатывает, хотя доступ с к файлу будет.
Попробуйте.
А еще лучше скиньте web.xml
Ответ написан
Комментировать
@idyoshin
какая версия Glassfish?

Если довольно старый (c JEE5) достаточно просто бросить в WEB-INF пустой faces-config.xml

Если свежий: по-умолчанию все jsf представления сейчас facelets. - вы видите скорее всего чистый xhtml - вместо xhtml суффикса достаточно добавить jsf (по-умолчанию в JEE7)

Если есть желание то можно в web.xml прописать запрет на отдачу чистых xhtml файлов - что бы пользователю не отдавались необработанные вьюшки.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы