2010-06-30 65 views
0

我有一個應用程序,與EJB3,JSF和行家,它運行在JBoss 4.2.2GA編碼JBoss的閥編碼的問題而URL重寫

我一直面臨2天的問題是我不能轉換非在運行時添加到url的英文字符。例如,有一個搜索文本框和一個按鈕。當用戶輸入包含非英文字符的單詞並按下按鈕時,它將被添加到具有不良字符(如%56或& 347等)的網址中。

有沒有什麼辦法可以實現我想要的功能在這裏做?順便說一句,有沒有什麼辦法克服這個問題在jboss端配置,而不是應用程序端(過濾器或context.xml等)?

任何幫助,將不勝感激 非常感謝, 巴里斯

- 編輯:我用URLEncoder的解決了這個問題。當我將變量傳遞給動作方法時,我使用URLEncoder將其編碼爲正確的字符集。

實施例:從URL 採取參數: 字符串someString = ServletActionContext.getRequest()的getParameter( 「someStringFromURL」); 對字符串進行編碼; String encoded = URLEncoder.encode(someString,「ISO-8859-9」);

回答

0

我已經通過使用URLEncoder解決了這個問題。當我將變量傳遞給動作方法時,我使用URLEncoder將其編碼爲正確的字符集。

實施例:從URL取參數:

String someString = ServletActionContext.getRequest().getParameter("someStringFromURL"); 

編碼字符串;

String encoded = URLEncoder.encode(someString, "ISO-8859-9"); 
1

查找你的tomcat的server.xml適當的連接器元件(部署/爲最新版本的jboss-web.deployer/server.xml中),並與UTF-8值添加屬性URIEncoding

+0

嗨,首先非常感謝, 但是,即使我嘗試過,結果也是一樣的。 如果您對此有其他想法,我會很高興。 – Javatar 2010-07-02 07:12:22

+0

你重新啓動了jboss,我認爲?嗯... – pra 2010-07-02 16:18:02

+0

不做任何改變:(無論如何感謝很多 – Javatar 2010-07-09 14:43:01