Жизненный цикл JSF2 ManagedBeans - PullRequest
       3

Жизненный цикл JSF2 ManagedBeans

2 голосов
/ 16 сентября 2010

У меня есть основной вопрос о JSF и их ManagedBeans.Представьте, что мы установили ManagedBean, который содержит только данные для и с моей точки зрения:

@ManagedBean(name = "dataBean")
@SessionScoped
public class DataBean {

Далее приведен мой контроллер с внедрением зависимостей для подключения контроллера с моделью:

@ManagedBean
@RequestScoped
public class Controller {
  @ManagedProperty(value = "#{dataBean}")
  private DataBean dataBean;

Теперь давайте подумаем о нескольких управляемых Bean-компонентах в одном контроллере: возможно ли внедрить другой ManagedBean в контроллер, например:

@ManagedProperty(value = "#{dataBean}")
private DataBean dataBean;
@ManagedProperty(value = "#{dataBean}")
private DataBean dataBean2;

И если так, как JSF узнает, какой бин принадлежит какой-то странице .xhtml?


Я очень смущен в данный момент: - / Потому что с моим кодом что-то не так ... Но сначала я должен понять это ясно

Приветствия ...

Добавление:

Допустим, я хочу получить доступ к одному и тому же управляемому компоненту (sessionScoped) из двух контроллеров.Могу я легко сказать:

@ManagedBean
@RequestScoped
public class Controller {
  @ManagedProperty(value = "#{dataBean}")
  private DataBean dataBean;
...
@ManagedBean
@RequestScoped
public class Controller2 {
  @ManagedProperty(value = "#{dataBean}")
  private DataBean dataBean;

И у меня есть тот же экземпляр DataBean?

1 Ответ

1 голос
/ 16 сентября 2010

Этот код:

@ManagedProperty(value = "#{dataBean}")
private DataBean dataBean;
@ManagedProperty(value = "#{dataBean}")
private DataBean dataBean2;

Внедрит один и тот же экземпляр в dataBean и dataBean2.Существует только один #{dataBean}.

Добавление (ответ на вопрос Добавление :))

Да, если dataBean равно @SessionScoped, в обоих контроллерах выполучите тот же DataBean.В текущем сеансе есть только один.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...