Проблема JSF 2.0 (faces-config)

У нас есть faces-config.xml в JSF 1.0, где мы пишем об управляемых компонентах, зависимостях, навигации и т. д.

Я разрабатывал пример проекта с использованием JSF 2.0. Но, поскольку я не знаю аннотации, мне нужно включить face-config.xml извне. Пожалуйста, предоставьте решение для этого, так как в JSF 2.0 нам не нужно его включать. Что стоит за этим? Как мы устанавливаем bean-компонент как manage-bean. Что такое аннотация? Как это используется?


person Community    schedule 16.06.2010    source источник


Ответы (3)


(...) в JSF 2.0 нам не нужно его включать. Что стоит за этим?

В трех словах: простота разработки. Просто нужно написать меньше кода — шаблонный код удален, по возможности используются значения по умолчанию, а аннотации используются для уменьшения потребности в дескрипторах развертывания.

Как мы устанавливаем bean-компонент как manage-bean. Что такое аннотация? Как это используется?

Управляемые компоненты идентифицируются с помощью аннотации @ManagedBean. Область действия bean-компонента также указывается с помощью аннотаций (@RequestScoped, @SessionScoped, @ApplicationScoped и т. д.).

Итак, в JSF 1.0 следующее:

<managed-bean>
  <managed-bean-name>foo</managed-bean-name>
  <managed-bean-class>com.foo.Foo</managed-bean-class>
  <managed-bean-scope>session</managed-bean>
</managed-bean>

Можно переписать как таковой в JSF 2.0:

@ManagedBean
@SessionScoped
public class Foo {
    //...
}

И упоминается так на странице Facelet:

<h:inputText label="eMailID" id="emailId" 
value="#{foo.email}" size="20" required="true"/>

(По умолчанию имя управляемого компонента будет именем аннотированного класса с первой буквой класса в нижнем регистре.)

Смотрите также

person Pascal Thivent    schedule 16.06.2010

См. руководство по аннотациям.

Для JSF вы можете сделать что-то подобное (используя @ManagedBean аннотация):

@ManagedBean
public class YourManagedBean {
    ...
}
person Bozho    schedule 16.06.2010

Вы можете использовать Faces-config.xml в JSF2 точно так же, как и в JSF 1.x. На самом деле, хотя аннотации часто можно использовать вместо файла Faces-config.xml, не каждая функция JSF доступна строго через аннотации, поэтому иногда вам нужен файл Faces-config даже в JSF2.

Однако есть одно небольшое отличие, заключающееся в том, что вы должны обновить ссылку на версию схемы xml в файлеfaces-config, чтобы отразить изменения схемы, которые вступили в силу с JSF2.

person Tim Holloway    schedule 16.06.2010