2011-09-13 4 views
4

Tomcat 6.0.32에서 GWT 기반 웹 응용 프로그램을 실행하고 있습니다.Tomcat, UTF-8 및 non-bmp 문자

BMP가 아닌 문자 (이 문자가 파일 이름에있는 위치)가 포함 된 URL을 가져 오는 데 문제가 있습니다. 3 바이트 이하의 문자가 포함 된 URL. 문제없이 작동합니다. 예를 들어

: 파일 이름이 .txt로되어 - URL이 UTF-8이 %의 F0 % A5 % A7 % 84.txt 특정 뷰가없는

http://localhost:8080/foo/bar/%F0%A5%A7%84.txt?param1=x&param2=y

찾을 수있다로 인코딩 할 때

그러나 파일 이름이 犬 .txt 인 경우 - UTF-8로 인코딩 된 URL은 % E7 % 8A % AC.txt -

http://localhost:8080/foo/bar/%E7%8A%AC.txt?param1=x&param2=y입니다.

Windows XP 시스템에서 URIEncoding = UTF-8을 사용하도록 Tomcat에 server.xml을 설정했습니다.

비 BMP 문자의 디코딩과 관련하여 Tomcat 6의 현재 제한 사항을 알고있는 사람이 있습니까?

+0

참고 : Tomcat 7.0.19 또는 Tomcat 6.0.20에서 문제를 재현 할 수 없습니다. 아마도 OS 플랫폼이나 환경에 따라 다르겠습니까? Win7 x64를 사용하고 있습니다. 작업 공간 인코딩이 UTF-8로 설정된 Eclipse Helios SR2를 사용하여 파일을 작성하고 저장했습니다. – BalusC

+0

플랫폼에 따라 다르다는 것을 알기 시작했습니다. Windows XP는 비 bmp (4 바이트) 문자를 크게 지원하지 않습니다. 적절한 글꼴이로드되어 있어도 WindowsXP-Japan에서 표시 할 수 없습니다. 나는 Windows 7이 나에게 더 나은 운명을 주는지보기 위해 노력하고 싶다. 감사! – Locriansax

답변

1

남아있는 인코딩 문제 (Tomcat 4 일 전)를 해결하기 위해 몇 년 전에 일부 작업이 있었기 때문에 모든 현재 Tomcat 버전에서 URIEncoding = "UTF-8을 제공하는 모든 UTF-8 문자의 디코딩을 올바르게 처리해야합니다 "가 커넥터에 설정되어 있습니다.

그 다음 가능한 원인을하지 않는 경우 (가능성의 순서대로) : - Tomcat 구성 문제 (보이는이 정렬이 같은) - 응용 프로그램 문제를 - OS/파일 시스템 구성/문제 - 톰캣 버그

톰캣 버그라고 확신하는 사람은보고하여 누군가가 살펴 봅니다.