2011-04-04 61 views
1

我试图在几个SessionScoped bean之间共享一个对象。我虽然得到错误,我真的不知道为什么。使用ManagedProperty的问题

@ManagedProperty(value="#{tb}") 
private testBean tb; 

我认为这是正确的语法,但像tb.getName导致异常的任何电话。

@ManagedBean(name = "tb") 
public class testBean 
{ 
    private String name = "sumthing"; 

    public void setName(String name) 
    { 
     this.name = name; 
    } 

    public String getName() 
    { 
     return this.name; 
    } 
} 

我完全误解了ManagedProperty的工作原理吗?

回答

2

可能是你的消费类没有制定者/吸气的tb

0

为什么不加@SessionScoped到您的JavaBean?看到我对这个SO Question的解释。其次,你不要做#{tb.getName},而应该用EL表达式#{tb.name}来代替。

+0

它在faces-config中声明了SessoNScoped。虽然从一些测试中,我认为这可能是图书馆的问题,因为我注意到tb为空。 – David 2011-04-05 07:06:47