2012-01-18 2 views
1

У меня есть управляемый компонент:JSF впрыскивается боб не работает с Primefaces дерева

@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.

+0

Кажется, подобная проблема, как [этот вопрос] (HTTP: //stackoverflow.com/questions/12513374/injected-session-scoped-bean-in-view-scoped-bean-duplicating). никогда не было решено – blo0p3r

ответ

0

Поместите аннотацию на сеттера для Bean А вместо члена:

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

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

Смежные вопросы