JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Application Server » Tomcat  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友   
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Tomcat傳送中文URL的問題
satan_qsdfedc





發文: 79
積分: 1
於 2005-12-05 21:00 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
我的Tomcat在傳值及接值的時候都沒有問題,

但是我在做上傳檔案的時候,網址是正確的,(如附件圖片所顯示)

但是再開啟的時候,卻會變成亂碼,我也曾參考下面的討論串,

http://www.javaworld.com.tw/jute/post/view?bid=9&id=44042&sty=1&tpg=1&age=0

看了精靈在server.xml的設定,我在之前便在Connector設定了,

URIEncoding="Big5",但是這無法解決我在上傳中文檔名時並在讀取網址時的問題,

我也曾試著從程式方面解決問題,但是發現在開啟有中文的網址時,

便一樣會發生錯誤,所以心裡有個聲音跟我說是Tomcat的設定問題,

請問要如何才能把網址有中文的問題解決。

我的環境為struts+tomcat 5.0

附件如下:


satan_qsdfedc edited on 2005-12-05 21:09
reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
satan_qsdfedc





發文: 79
積分: 1
於 2005-12-06 23:03 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
真的沒有人要幫我解答嗎...Disapproved
還是我的敘述不太好?
我真的有認真看過相關的文章...但是沒有找到答案Dead


reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
kevincml





發文: 61
積分: 0
於 2005-12-07 10:53 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
不太了解你的問題
不過我也是TOMCAT 5.0.18 + STRUTS
用Jakarta commons做上傳
中文檔名是沒問題的, 我用UTF-8 encoding


reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
satan_qsdfedc





發文: 79
積分: 1
於 2005-12-07 17:17 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
就是我按下下面的連結
"http://127.0.0.1/labsystem/news/資源分享.txt"
後會出現錯誤,如下圖:


reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
kevincml





發文: 61
積分: 0
於 2005-12-08 11:14 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
如果是中文URL...
改一下SERVER.XML
在Connector裡加上URIEncoding="UTF-8"


reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
satan_qsdfedc





發文: 79
積分: 1
於 2005-12-08 12:20 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
謝謝您kevincml 先生:

我在server.xml裡原本是設定URIEncoding="Big5",

雖然設定成URIEncoding="UTF-8"雖然可以順利顯示中文URLBig Smile

但是在其他有關中文的地方就會變成亂碼,雖然可以用

String a= new String(b.getBytes("ISO-8859-1"),"big5");

這方式解決,但是一改的話就要改很多地方Dead

請問有沒有不用改server.xml就可以順利顯示中文URL的方法?

非常謝謝您之前的回答。


reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
satan_qsdfedc





發文: 79
積分: 1
於 2005-12-09 12:40 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
kevincml 先生謝謝您,我決定把編碼都轉為utf-8了,
很感謝您的回答Smile


reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
nillwu





發文: 7
積分: 0
於 2005-12-09 13:04 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
用filter來編碼(UTF-8)會更好吧。

reply to postreply to post
作者 Re:Tomcat傳送中文URL的問題 [Re:satan_qsdfedc]
racklin





發文: 5
積分: 1
於 2005-12-16 17:05 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
不用這麼麻煩吧!!!

其實這個問題不是 JAVA 或任何 AP Server 問題!!
為了這個問題把你所有的網頁及程式叫出來重改太不值得了!!

這是 Browser 特性的問題, Internet Explorer 會把 URL 以 UTF-8 編碼連結
對 Server 送出. (附上 ie 設定圖)

我以 中.txt 為例.. (以 ASCII 顯示比較好了解)
若你的網頁為 big5 編碼, 你預期要下載 中.txt (%a4%a4.txt) 其實, ie 送出的是
(%E4%B8%AD.txt) , 所以當然沒有這個檔案, 所以顯示 404 錯誤!!

如上面回信方式, 全部改成 UTF-8 當然避掉了這個問題, 原因不是解決這點, 而是因為你存檔時, 以 UTF-8 的 中.txt (%E4%B8%AD.txt) 為檔案名稱 存檔, 所以順便解決了這
個中文檔名問題罷了...當然這時也就找的到檔案了..

若你改半套, 會出現更怪的問題, 那就是 IE 能dl到, firefox.. dl 不到..

所以, 這跟你程式設計無關, 單純只是檔案在不在的問題, 若你是 Unix , 且網頁是
BIG5 編碼, 你可以存 %A4%A4.txt , 然後再 LINK 一份 %E4%B8%AD.txt , 這
樣, 不管是 firefox ( %A4%A4.txt) 還是 IE (%E4%B8%AD.txt) 都能取到這個檔案..

所以, 其實這是二個檔案名稱的問題, 而非程式問題. 最快的方式, 就是同時存在這二種編碼的檔案, 讓世佔率最高最怪的 ie 能取到. 因為, 在 ie6 以前, 這個預設值是關閉的, 所以有些 ie5 用戶反而會用 big5 編碼來向你要檔案..
別猜測使用者的設定, 都存在或是未來再把程式全換掉才是保險的做法..

至於 檔名 把 Big5->UTF-8 或 UTF-8->BIG5 就不用在此說明了..


racklin edited on 2005-12-16 17:23
reply to postreply to post
» JWorld@TW »  Application Server » Tomcat

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8