webwork2在weblogic下的中文問題解決
發表于:2007-07-01來源:作者:點擊數:
標簽:
研究了幾天webwork2我的習慣首先關注中文問題解決 我喜歡 weblogic 因為連地址欄寫中文都沒問題 中文這方面webwork2比struts更好解決 不用設置fitler過濾了不錯 jsp里都設置gb2312就可以第一 %@ page contentType=text/html; charset=gb2312 language= java
研究了幾天webwork2我的習慣首先關注中文問題解決 我喜歡
weblogic因為連地址欄寫中文都沒問題
中文這方面webwork2比struts更好解決 不用設置fitler過濾了不錯
jsp里都設置gb2312就可以第一
<%@ page contentType="text/html; charset=gb2312" language="
java" import="java.
sql.*" errorPage="" %><html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
有人說不能加,加了反而亂碼,我就沒問題第二
在webwork.properties里加上webwork.locale=zh_CNwebwork.i18n.encoding = GB2312
上面做完之后就OK了 頁面傳值,
數據庫插入讀出都OK了
不過還有需要解決的地方 用過struts的都知道<bean:message>是亂碼的webwork也一樣,當然這是java程序讀文本文件里的中文就是亂碼的 解決方法我以前知道的是用native2ascii來轉換資源文件,不過轉后在編輯就不認識了,修改依次轉依次麻煩啊所以我還是選擇修改webwork textTag的源碼 ,很簡單的
找到TextTag.java 然后找到下面這段
if(msg != null) { try {
msg = new String(msg.getBytes("iso-8859-1"));//加入這行就OK了,這樣會影響到國際化,(可以判斷如果不是zh_CN就不執行轉碼,我還沒試過) if(getId() == null) { pageContext.getOut().write(msg); } else { stack.getContext().put(getId(), msg); } } catch(IOException e) { throw new JspException(e); } }
struts里也可以這么做的
這樣就不用在對資源文件進行native2ascii了
第三
還有會亂碼的地方就是fileupload 上傳中文名的文件會遇到文件名亂碼問題
解決方法試在webwork.properties設置一下
webwork.multipart.parser=pell //不要用cos
OK 目前我遇到的就這些了
原文轉自:http://www.anti-gravitydesign.com