2013-12-13 35 views
0

我想讓我的項目國際化。我支持西班牙和意大利語言,但是來自兩種語言(尖銳口音和嚴重口音字符)的一些字符在UI上沒有正確顯示。如何使項目在Struts 2中國際化?

有沒有人有解決這個問題的辦法?

+0

您將此標記爲與struts2相關但未發佈產生編碼錯誤的代碼。有一百萬種編碼錯誤可能會出現,而不是更具體! – dendini

+1

這裏不可能複製粘貼代碼。我已經告訴過你了,我想這足以讓人理解,就像其他人所理解的一樣。 – harry

回答

1

是的。你有一個編碼問題。您的服務器按照瀏覽器的想法以不同的編碼方式提供頁面,這是因爲國際字符出現錯誤。

您需要修復您的web應用程序和您的應用程序服務器的設置,以使用更好的編碼(最好是utf-8)。

+0

我已經這樣做了。 – harry

+0

如果站點後面還有數據庫連接,那麼可能存在Web應用程序和數據庫之間的編碼差異。如果沒有編碼偏差,請使用國際字符。 – peterh

+0

數據不是來自數據庫。我只改變了硬編碼的標籤。在法國的情況下,它工作正常。所以我想我可能有一些編碼問題,我無法找到 – harry

0

該框架國際化。

您需要爲通過struts標籤顯示的本地化消息添加相應的每個語言環境資源包。使用text標記或getText()在UI中檢索消息。

瀏覽器語言與HTTP請求一起傳遞,框架創建與瀏覽器設置對應的語言環境。通過傳遞一個特殊參數request_localei18n攔截器來切換語言環境,該攔截器應該在您的堆棧上。

您也可以將此攔截器配置爲接受用戶定義的參數。

通常切換到用戶會話的區域設置。因此,每次請求時都不必傳遞參數,但如果需要,也會支持此情況。看看如何使用localization實現上述所有功能。