Archive

文章標籤 ‘struts’

Struts 中文問題排除

2008年7月24日 尚無評論

 目前除了一個一個參數轉碼外,想要省功夫的作法有以下二種

1.實作一個servlet filter攔截Action 並設定request.setCharacterEncoding(“big5”); 這樣所有進來都會先調整編碼

2.實作一個Struts的controller 在其中調整語系編碼即可,以下在JavaWorld的文章有不錯的範例程式可參考

http://www.javaworld.com.tw/jute/post/view?bid=11&id=35142&tpg=1&ppg=1&sty=1&age=0#35142

不過如果案子一多,不同語系在處理上就很麻煩,所以小弟再調整了一下將charset參數抽出來放到web.xml裡
從web.xml就可以設定語系參數為何,這樣就可以依照案子的需要調整語系

以下是程式的調整,為了取得web.xml  的參數值,所以使用了ServletContext ,因為在實作的controller只有 request
所以從request 取出的session就可以再叫出servletContext了,用法如下:

charset=request.getSession().getServletContext().getInitParameter(“charset”);

而在web.xml就要設定

  <context-param>
     <param-name>charset</param-name>
     <param-value>UTF-8</param-value>
  </context-param>

再來就是在struts-config.xml之中,設定好使用剛實作出來的controller 即可解決中文問題

Categories: JAVA Tags: