版本說(shuō)明:
JSF:1.2
myFaces:1.0.9
myfaces是jsf的擴展,提供了jsf不具備的一些功能,比如頁(yè)面框架,數據表格的排序,樹(shù)的顯示等等。
由于jsf的開(kāi)發(fā)還處于基本階段,網(wǎng)上沒(méi)有很多的資料(特別是中文資料),并且開(kāi)發(fā)環(huán)境也不夠完善。
jsf倡導的是基于組件的開(kāi)發(fā)方式,希望能夠像vb開(kāi)發(fā)那樣簡(jiǎn)單。
在實(shí)際的一些運用中,發(fā)現jsf開(kāi)發(fā)并沒(méi)有達到理想的那種程度,至少沒(méi)有達到技術(shù)本身設想的簡(jiǎn)單。其中很大的一個(gè)原因就是沒(méi)有很好的支持jsf開(kāi)發(fā)的IDE,雖然在市面上已經(jīng)推出了若干支持jsf開(kāi)發(fā)的IDE,但是效果并不理想,圖形化的設計界面只適合做一般的演示,而對于真正市場(chǎng)的運用,還是力不從心的。
在項目中,我們使用的是jsf+spring的開(kāi)發(fā)模式,這樣的好處就是能夠很容易地進(jìn)行一些配置,對程序的可移植性,可擴展性以及調試都帶來(lái)很大的方便。
下面進(jìn)入正題,說(shuō)說(shuō)我在使用jsf中遇到的一些問(wèn)題。
首先第一個(gè)問(wèn)題就是顯示的亂碼。
使用中發(fā)現在一些表單提交的時(shí)候會(huì )出現亂碼。
后來(lái)調查發(fā)現JSF在發(fā)出Request請求的時(shí)候并沒(méi)有正常保存characterEncoding,所以這樣導致了在頁(yè)面再顯示的時(shí)候出現了亂碼。
所以,在請求響應的過(guò)程中,我們加入了filter。
每次在提交的時(shí)候就執行"response.setCharacterEncoding("UTF-8")",這樣的話(huà)字體就可以用UTF-8的格式正常顯示了。
待續...
聯(lián)系客服