JSF 的FacesContext 在使用中遇到这样的一个问题,就是向FacesContext中加入的FacesMessages只有第一次能够显示出来,第二次没有办法显示。经多次试验,最终发现是我自己在基类中写的getFacesContext()方法有问题。
我是这样写的:
private FacesContext facesContext;
public FacesContext getFacesContext() {
if (this.facesContext==null)
this.facesContext =FacesContext.getCurrentInstance();
return FacesContext.getCurrentInstance();
}
然后在子类中直接调用这个方法就可以得到FacesContext了。
想法是好的,但是并没有仔细了解FacesContext的实现。
其实FacesContext.getCurrentInstance()就已经能够每调用的时候都在上下广得到同一个实例了。不必再象我这样写了。反而会画蛇添足。
改成这样就可以了。
public FacesContext getFacesContext() {
return FacesContext.getCurrentInstance();
}
Technorati : facesContext
posted on 2008-04-26 21:11
Libo 阅读(1149)
评论(0) 编辑 收藏 所属分类:
JavaServer Faces