gpt4 book ai didi

java - Seam 自动创建不起作用?

转载 作者:行者123 更新时间:2023-12-02 07:58:25 25 4
gpt4 key购买 nike

我正在尝试将接缝组件注入(inject)另一个组件中,自动创建它。但由于某种原因,注入(inject)的接缝组件会抛出 NPE。

XHTML

                   <a4j:commandLink id="cbrModal"
action="#{detailAction.showInformation(1L)}"
reRender="DetailModal"
limitToList="true">
<h:outputText value="text"/>

</a4j:commandLink>

DetailActionBean.java

@Name("detailAction")
public class DetailActionBean implements Serializable {

@In(create = true, required = false)
@Out(required = false)
private RulesValidator rulesValidator;

public void showInformation(long id) {

rulesValidator.setCheckCount(0); // rulesValidator == null here and throws npe

}
)

RulesValidator.java

@AutoCreate
@Name("rulesValidator")
@Scope(ScopeType.SESSION)
public class RulesValidator implements Serializable {

private int checkCount = 0;
public void setCheckCount(int checkCount) {
this.checkCount = checkCount;
}


}

最佳答案

Seam 将扫描基础包并查找 @Name 组件,然后这些组件可以自动连接。我应该为seam放置一个seam.properties文件(空)来知道要扫描哪些基础包。我正在开发的模块有seam.properties,因此RulesValidator 没有被扫描并被视为seam 组件。因此 autoCreate 起作用了。

关于java - Seam 自动创建不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9288245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com