我有一段非常简单的代码,内容如下:

@In(create = true) OutletHome outletHome;


它工作正常(使用Seam 2.2.0.GA),并且创建和注入对象时没有任何问题。但是当我尝试将其更改为:

@In(create = true) OutletHome deactivationOutletHome;


它突然停止工作,并导致异常:


  org.jboss.seam.RequiredException:@In属性要求非空值:customerHome.deactivationOutletHome


造成这种问题的原因可能是什么?变量名称如何关联?我该如何解决?

最佳答案

尝试,


@In(create = true, value="outletHome")
OutletHome deactivationOutletHome;


您注入的值必须是接缝组件。假定缺少属性“值”,该属性等于要注入的字段名称。

其他访问接缝组件的方法是:


@In(value="componentName", create = true)
@In("#{componentName}")

10-08 18:03