Внедренный компонент JSF не работает с деревом Primefaces - PullRequest
1 голос
/ 18 января 2012

У меня есть управляемый компонент:

@ManagedBean
@ViewScoped
public class BeanA implements Serializable {
    private TreeNode tree;

... }

и я хочу добавить его в

@ManagedBean
@ViewScoped
public class BeanB extends Serializable {

   @ManagedProperty(value="#{beanA}")
   private BeanA injectedBean;

... getters and setters for injectedBean
}

но ничего не происходит, когда я пытаюсь ссылаться на свойства BeanA через BeanB на странице. В частности, я пытаюсь использовать функции BeanA (модель данных для дерева простых чисел) на странице, поддерживаемой BeanB. Нет ошибок / следов стека также. Дерево не выводится на экран, но дерево выводится на страницу, которая напрямую использует BeanA.

1 Ответ

0 голосов
/ 04 апреля 2012

Поместите аннотацию в установщик для Bean A, а не в элемент:

@ManagedProperty
public void setInjectedBean(BeanA beanA) {
   this.beanA = beanA;
}

В качестве альтернативы используйте @Inject вместо @ ManagedProperty

...