关于JSF显示问题,请帮忙

fzhq1970 2010-09-05
我的jsf页面如下:

<h:commandButton value="新建" action="#{bean.save} immediate="true"/>


<h:inputText id="pname" value="#{bean.product.pname}" />
<h:inputText id="pdesc" value="#{bean.product.pdesc}" />
<h:commandButton action="#{bean.save} immediate="true" value="保存“/>

Product定义如下
private pname=“9”;
---getter
---setter

Bean定义如下:

private Product bean;
--getter
--setter
public String newProduct(){
  product = serviceLoadProduct();
  log.debug(product.getPname());//日志显示这里数据已经正确
  return null;
}



public String save(){
   ......
}

不知道为什么,页面总是显示pname输入框中是9
请帮忙,多谢
zhanhongbo1112 2010-10-09
感觉你贴的代码不全,#{bean.product.pname},如果Bean是Product的话,怎么它的属性也有product?

你在Product中定义了private pname=“9”; 所以显示出来当然是字符串9了。这有什么问题?
因为渲染输出时会实例化bean中的product
pyjhmoon 2010-10-12
你的生命周期是什么request的?
如果是request你提交后 在重新加载页面 的过程中是会又重新建立一组对像的 所以Product是一个新的 所以显示还是9
Global site tag (gtag.js) - Google Analytics