posts - 3,  comments - 6,  trackbacks - 0
          最近感受了一下Grails,是快捷了很多。創建好持久對象后,CRUD的界面就可以立即生成,很吸引人。所以打算更深入的學習一下,看看能否用在正式產品中。

          慣例,關注的第一個問題是編碼問題,這是任何技術產品化的第一步。
          首先,我在保存信息時填入了一些中文,保存沒有問題。使用hsqldb時本身是unicode的。使用mysql的話,將編碼集指定為utf8同樣沒有問題。這應該受益與jdbc本身,以前解決jdbc編碼問題的經驗應該都適用。grails所做的主要是在http協議的處理中都采用了utf8。

          其次,我要看看在程序文件中使用中文。最常見的情況一定是在gsp中寫中文了,我把gsp中的一些提示文字,如Edit,List,Create,Show等,都修改成中文。情況不錯,這些中文都能正確顯示。
          不過我注意到gsp中沒有像jsp那樣的pageEncoding聲明,估計是采用了系統默認字符集編譯運行的,如果同樣的代碼換了環境會怎么樣?我把同樣的代碼拿到ubuntu上跑了一下,使用grails直接運行不能顯示正確的中文,顯然是在使用utf8作為默認字符集進行編譯和運行的。我又嘗試了一下把在windows上打包好的war放在tomcat下運行,問題是一樣的在windows下正確顯示的內容在linux下顯示不了。
          應該算是個典型的發布問題吧,打包好的代碼不能跨平臺(其實是不同字符集環境)。去查閱了一下官方網站上有關gsp的文檔,內容太少了,只提到對應的servlet程序可以接收一個encoding的初始化參數。但是不能確定這個參數是用于讀取gsp文件的?還是,指定http協議使用的字符集的。而且使用的類似乎跟grails集成的也不一樣,所以無功而返。今天把grails的源碼都拿下來找一找,看看是否有線索。
          在 XXXControler 中使用中文字符也有類似的情況,不過應該比較不常用到的,所以問題并不嚴重。也許grails將來能夠將 Controler 都直接編譯成class文件以后再發布,那樣就能少一些編碼問題。

          下次有時間看看國際化方面的情況
          posted on 2007-09-04 12:58 Tiger F 閱讀(1185) 評論(2)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 读书| 屯留县| 库尔勒市| 惠州市| 缙云县| 宁安市| 贞丰县| 榆树市| 宝兴县| 垣曲县| 茌平县| 汨罗市| 泾阳县| 温泉县| 会宁县| 东明县| 长葛市| 桂林市| 道真| 玉屏| 和政县| 惠州市| 蛟河市| 芷江| 紫金县| 会泽县| 周宁县| 新邵县| 鸡东县| 霍州市| 松潘县| 扎兰屯市| 天祝| 万年县| 阿拉尔市| 济宁市| 清新县| 塘沽区| 全椒县| 上蔡县| 惠州市|