我有一段非常简单的代码,内容如下:
@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}")