Xpages 从bean将托管属性添加到列表中的对象
我想用托管Bean做点什么,但我找不到解决方案 为了解释我将要做什么,我将展示一个小例子: 我创建了一个具有以下结构的对象数据Xpages 从bean将托管属性添加到列表中的对象,xpages,jsf-1.2,Xpages,Jsf 1.2,我想用托管Bean做点什么,但我找不到解决方案 为了解释我将要做什么,我将展示一个小例子: 我创建了一个具有以下结构的对象数据 public class Data implements Serializable{ private static final long serialVersionUID = 5156829783321214340L; String value=""; public Data() { } public String getV
public class Data implements Serializable{
private static final long serialVersionUID = 5156829783321214340L;
String value="";
public Data() {
}
public String getValue() {
return value;
}
void setValue(String data) {
this. value = data;
}
}
正如您所看到的,ist是一个具有一个属性的简单数据保持器
现在我创建了一个secound对象,它将成为我的bean,它只保存一个数据对象列表
public class Databean implements Serializable{
private static final long serialVersionUID = 9205700558419738494L;
private ArrayList<Data> datalist;
public Databean()
{
datalist = new ArrayList<Data>();
Data newItem;
for (int i=0; i<5; i++) {
newItem = new Data();
datalist.add(newItem);
}
}
public ArrayList<Data> getDatalist() {
return datalist;
}
public void setDatalist(ArrayList<Data> datalist) {
this.datalist = datalist;
}
}
公共类数据库实现了可序列化{
私有静态最终长serialVersionUID=920570558419738494L;
私有ArrayList数据列表;
公共数据库()
{
datalist=newarraylist();
数据新建项;
对于(int i=0;i您的绑定是错误的
<xp:repeat value="#{managedBean.datalist}" var="rowData">
<xp:inputText id="inputText1" defaultValue="#{rowData.value}"></xp:inputText>
</xp:repeat>
rowData
包含数据对象,它为字段value
填充getter/setter,而不是datavalue
您的绑定错误
<xp:repeat value="#{managedBean.datalist}" var="rowData">
<xp:inputText id="inputText1" defaultValue="#{rowData.value}"></xp:inputText>
</xp:repeat>
rowData
包含数据对象,该对象填充字段value
的getter/setter,而不是datavalue
在repeat to var(rowData)中分配的变量将包含数据类的实例。要将每个输入控件绑定到值字段,请引用该属性。因为您有一个getValue()并定义了setValue(),将创建一个值绑定,您将能够编辑内容。如果只定义了getValue()方法,将创建一个方法绑定,并且该字段将不可编辑
<xp:repeat value="#{managedBean.datalist}" var="rowData">
<xp:inputText id="inputText1" value="#{rowData.value}"></xp:inputText>
</xp:repeat>
在repeat to var(rowData)中指定的变量将包含数据类的实例。要将每个输入控件绑定到值字段,请引用该属性。由于定义了getValue()和setValue(),因此将创建值绑定,并且您将能够编辑内容。如果只有getValue()方法已定义。如果创建了方法绑定,则该字段将不可编辑
<xp:repeat value="#{managedBean.datalist}" var="rowData">
<xp:inputText id="inputText1" value="#{rowData.value}"></xp:inputText>
</xp:repeat>
@per henrik lausten在他的博客上有一个很好的教程。@per henrik lausten在他的博客上有一个很好的教程。所以我更正了Inputtext中的数据绑定。但是当我在页面的字段中更改一个值时,它不会自动写回数据对象。是不是faces配置需要一些更多的文本,比如managed propert text还是这样?在清除domino服务器的缓存后,现在一切正常。因此,我更正了Inputtext中的数据绑定。但当我更改页面字段中的值时,它不会自动写回数据对象。可能是faces配置需要更多的文本,如托管属性文本或其他文本吗?现在一切正常对domino服务器的缓存进行环化