org.jboss.seam.RequiredException:@In属性需要非null值:selectAccountPageBean.accountSessionBean

时间:2013-02-08 20:48:01

标签: java jboss seam

我的堆栈跟踪的“引起:”部分说:

Caused by: org.jboss.seam.RequiredException: 
@In attribute requires non-null value: selectAccountPageBean.accountSessionBean

Page-scoped bean具有:

@Name("selectAccountPageBean")
@Scope(ScopeType.PAGE)
public class SelectAccountPageWidgetBean 
    extends BaseWidgetBean implements Serializable
{
...
    @In(create = true)
    private AccountSessionBean accountSessionBean;
...
}

会话范围的bean具有:

@Name("accountSessionBean")
@Scope(ScopeType.SESSION)
public class AccountSessionBean implements Serializable
{
...
}

当我从facelet引用Page-scoped bean时,我收到了错误。

我在其他应用程序中做了同样的事情并且工作正常。是否有一些我在某处缺少的配置值?

2 个答案:

答案 0 :(得分:0)

我通过简单地在facelet中拼错bean名称来获得此错误。你也可以包括facelet代码吗?

答案 1 :(得分:0)

我不确定哪个修改了它,但我们做了两件事。

  1. 我们在components.properties文件中添加了。有人建议我们应该有一个 类路径,即使它是空的。
  2. 我们遇到组件所在的包有问题。包结构是 类似的东西:

    foo.bar.baz
    

    但该组件位于以下目录中:

    foo/bar/pirate/monkey/baz
    
  3. 我们只是将文件移动到正确的目录。