2011-02-17 61 views
1

我目前正在使用struts框架進行雙語應用(英語和阿拉伯語)。支持雙語應用struts框架

我的應用程序目前正在建立支持英文字符。

現在嘗試後並在Tomcat中6的環境我的JSP頁面讀取UTF-8編碼的字符。

所以我在我所有的JSP頁面和動作類建立了基本的東西。

我在JSP頁面中我的動作類

  `request.setCharacterEncoding("UTF-8"); 
    response.setCharacterEncoding("UTF-8"); 
    response.setContentType("UTF-8");` 

設置此:<%@page pageEncoding="UTF-8"%> <%@page language="java" contentType="text/html;charset=UTF-8"%>

所以,當我嘗試阿拉伯字符張貼到我的jsp頁面,它會顯示亂碼。

如何糾正呢?我還需要做些什麼來支持阿拉伯文或中文字符?

此外,正在使用數據庫來保存表單一旦用戶填寫的申請。用戶可以使用英文或阿拉伯文填寫表格。

我該如何做到這一點?

+0

好吧,我現在可以發佈字符到我的jsp頁面。這是我發佈字符串到我的Jsp頁面之前所做的。 (str.getBytes(),「UTF-8」);但我認爲我的行動類會爲我設置response.setCharacterEncoding(「UTF-8」)後爲我做。有沒有更好的方法來做到這一點?當我從表格中收到漢字時,我仍然有問題。我可能不得不將它轉換爲UTF-8的明確性,但我想有更好的方法..幫助 – ananth85 2011-02-18 00:14:29

回答

2

你需要做的只有兩件事讓UTF-8來爲POST的表單。

把這個JSP的頂部:

<%@ page pageEncoding="UTF-8" %> 

中運行你的動作類以前一個Filter將這個。

request.setCharacterEncoding("UTF-8"); 

在操作類中執行此操作可能已經太晚了。您應該在之前設置您或任何MVC框架收集請求參數。

+0

然後問題在於你如何顯示字符。你如何顯示它們?這篇文章可能有助於獲得一個和其他直:http://balusc.blogspot.com/2009/05/unicode-how-to-get-characters-right.html – BalusC 2011-02-18 20:10:09