2010-08-11 2 views
1

Я использую JSF 2.0 для создания веб-сайта. Затмение генерируется следующий файл web.xmlПредпочтительный способ создания стартовой страницы JSF?

... 
    <servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>/faces/*</url-pattern> 
    </servlet-mapping> 
... 

Таким образом, чтобы просмотреть мое заявление я должен посетить «локальный/MYAPP/лица /index.xhtml». Я предпочел бы, чтобы его увидеть посетив «локальный/MYAPP/index.xhtml»

Я вижу два варианта для этого:

Смена web.xml к следующему

... 
    <servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>/*</url-pattern> 
    </servlet-mapping> 
... 

Или настройки up index.xhtml в моем базовом каталоге, который выполняет javascript/meta direct в faces/index.xhtml.

Какой, по вашему мнению, лучше? Или есть другой способ, как вы это сделаете?

ответ

1

Не указывайте FacesServlet на все запросов. Вы не хотите, чтобы статические (не-JSF) запросы проходили через весь жизненный цикл JSF. Это добавит лишние накладные расходы. Направьте карту FacesServlet на номер url-pattern из *.xhtml.

Если у вас есть еще xhtml файлов, а что не нужно, чтобы пройти через JSF фабрику, то скорее выбрать другой url-pattern, как обычно используется *.jsf. Вам не нужно переименовывать расширение , FacesServlet автоматически найдет нужный ресурс.

Определенно не используют перенаправление JS/мета для домашней страницы. Просто объявите его <welcome-file> в web.xml.


Тем не менее, при наличии последней версии и настроено, Eclipse должен по умолчанию в web.xml автоматической генерации с FacesServlet отображенного на url-pattern из *.jsf. Убедитесь, что вы используете последнюю версию (Helios) и делаете все правильно в Eclipse (настраиваете грань проекта).

+0

Hi, Это был также вариант, о котором я думал (сопоставление только .xhtml). Я использую Eclipse Helios, и он генерирует файлы .xhtml по умолчанию, а также вышеупомянутый web.xml с сервлет-отображением/faces/.. Я думал, что .jsf больше не рекомендуется в JSF 2.0? У меня есть только динамические страницы (из-за i18n), поэтому сопоставление каждого .xhtml должно быть в порядке – Tim

+0

А, это должно быть моя конкретная конфигурация Eclipse. Единственное, что больше не рекомендуется в JSF 2.0, - это использование JSP вместо Facelets :) – BalusC