Jsf 在嵌套属性上设置h:inputText值不会';行不通
给定以下Java类A:Jsf 在嵌套属性上设置h:inputText值不会';行不通,jsf,jsf-2,Jsf,Jsf 2,给定以下Java类A: public class A { private String s1; private String s2; /// getters and setters } 我想将其用作JSFbean的成员: @ManagedBean public class Bean { private A a; public A getA () { return a; } public void setA
public class A {
private String s1;
private String s2;
/// getters and setters
}
我想将其用作JSFbean的成员:
@ManagedBean
public class Bean {
private A a;
public A getA () {
return a;
}
public void setA(A a) {
this.a = a;
}
}
要能够在.xhtml中以以下方式使用它:
<h:inputText id="s1" value="#{bean.a.s1}" />
<h:inputText id="s2" value="#{bean.a.s2}" />
这对我不起作用,可能吗?否则,我将不得不在类Bean中声明A的每个成员。在managedbean中应该是初始对象,如Leo所说 或者,通过构造函数初始化对象
@ManagedBean
public class Bean {
private A a;
public Bean(){
a = new A();
}
public A getA () {
return a;
}
public void setA(A a) {
this.a = a;
}
}
还是施工后
@ManagedBean
public class Bean {
private A a;
@PostConstruct
public void init() {
a = new A();
}
public A getA () {
return a;
}
public void setA(A a) {
this.a = a;
}
}
好吧,应该行得通。至少对我有用。也许你忘了创建一个新的实例?像私人A=新A();