Проблемы с настройкой JSF 2.0 на Eclipse Indigo

Я разрабатываю веб-приложение с JSF 2.0 на IDE Eclipse Indigo (последняя версия).

Но в Проект ->Свойства -> Аспекты проекта параметр JavaServer Faces настроен на версию 1.2, и когда я пытаюсь изменить версию на 2.0, появляется сообщение об ошибке.

Невозможно изменить версию аспекта проекта JavaServer Faces на 2.0.

Как ни странно, все библиотеки JSF в моем проекте имеют версию 2.0.

Я думаю, что это проблема, из-за которой на моих страницах не отображаются простые теги xhtml, такие как <h:outputLabel> и <h:inputText>.

Библиотеки JSF, которые я использую, были получены в проекте Mojarra 2.0.6.

Надеюсь, кто-то может мне помочь. Спасибо заранее.


person gpp    schedule 17.11.2011    source источник


Ответы (1)


Это причуда Eclipse. См. также ошибку Eclipse 201792, которая так и не была исправлена.

Единственный способ изменить версию JSF Facet — отредактировать следующую строку файла /.settings/org.eclipse.wst.common.project.facet.core.xml

<installed facet="jst.jsf" version="1.2"/>

to

<installed facet="jst.jsf" version="2.0"/>

Кроме того, вы также можете просто игнорировать его полностью. Изменение версии этого аспекта в любом случае не принесет вам никакой новой магии. Окончательная сборка WAR по-прежнему содержит библиотеки JSF 2.0, и если вы переобъявили <faces-config> корневое объявление файла /WEB-INF/faces-config.xml для соответствия JSF 2.0, проблем не должно быть. Если вы по-прежнему сталкиваетесь с проблемами при использовании Facelets (файлов XHTML, как вы сами говорите), вам следует задать новый и более конкретный вопрос об этом здесь.

person BalusC    schedule 17.11.2011
comment
Читая ваши строки, я удивляюсь, почему Eclipse не предлагает поддержку JSF2. JSF2 не так уж нов. - person Alex004; 29.11.2012
comment
@Alex: Eclipse определенно поддерживает JSF2 (начиная с Helios SR2). Этот конкретный случай — просто ошибка, из-за которой разработчик не может изменить версию аспекта проекта JSF с 1.2 на 2.0 в существующем проекте JSF 1.2. Создать новый проект JSF 2.0 с самого начала не проблема. - person BalusC; 29.11.2012