JSF 的FacesContext 在使用中遇到這樣的一個(gè)問(wèn)題,就是向FacesContext中加入的FacesMessages只有第一次能夠顯示出來(lái),第二次沒(méi)有辦法顯示。經(jīng)多次試驗(yàn),最終發(fā)現(xiàn)是我自己在基類中寫的getFacesContext()方法有問(wèn)題。
我是這樣寫的:
private FacesContext facesContext;
public FacesContext getFacesContext() {
if (this.facesContext==null)
this.facesContext =FacesContext.getCurrentInstance();
return FacesContext.getCurrentInstance();
}
然后在子類中直接調(diào)用這個(gè)方法就可以得到FacesContext了。
想法是好的,但是并沒(méi)有仔細(xì)了解FacesContext的實(shí)現(xiàn)。
其實(shí)FacesContext.getCurrentInstance()就已經(jīng)能夠每調(diào)用的時(shí)候都在上下廣得到同一個(gè)實(shí)例了。不必再象我這樣寫了。反而會(huì)畫蛇添足。
改成這樣就可以了。
public FacesContext getFacesContext() {
return FacesContext.getCurrentInstance();
}
Technorati : facesContext
posted on 2008-04-26 21:11
Libo 閱讀(1167)
評(píng)論(0) 編輯 收藏 所屬分類:
JavaServer Faces