Primefaces 更新基于BigDecimal的inputText将其值设置为零
我正在从Primefaces 更新基于BigDecimal的inputText将其值设置为零,primefaces,jsf-2.2,bigdecimal,Primefaces,Jsf 2.2,Bigdecimal,我正在从p:commandButton更新p:inputText 视图组件: 当页面加载时,如检查所示,amount在setter中为空,但当单击命令按钮updatedp:inputText时,backing bean字段amount被初始化并占用零值,如下所示: BigDecimal作为一个包装器,我想保持它未初始化(null),直到我初始化它为止。在命令按钮侦听器代码结束之前,amount为空。然后update=“amount”使用初始化(非空)零值调用setter。不知道初始化的原因和位
p:commandButton
更新p:inputText
视图组件:
当页面加载时,如检查所示,amount
在setter中为空,但当单击命令按钮updatedp:inputText
时,backing bean字段amount
被初始化并占用零值,如下所示:
BigDecimal
作为一个包装器,我想保持它未初始化(null
),直到我初始化它为止。在命令按钮侦听器代码结束之前,amount
为空。然后update=“amount”
使用初始化(非空)零值调用setter。不知道初始化的原因和位置。请仔细研究一下。您没有详细介绍您的环境和配置,但这可以作为dupe接受吗?您没有透露太多关于您的环境和配置的信息,但这可以作为dupe接受吗?
<p:commandButton value="Search" action="#{bean.retrieveInfo}" update="amount"/>
<p:inputText id="amount" value="#{bean.amount}"/>
private BigDecimal amount;
public BigDecimal getAmount() {
return amount;
}
public void setAmount(BigDecimal amount) {
this.amount = amount;
}