스프링 MVC을 컨트롤러 프레임 워크로 사용하여 앱 국제화를 구현하기 위해 언어 변경을 감지하기 위해 org.springframework.web.servlet.i18n.LocaleChangeInterceptor
을 사용하고 특정 언어가 설정되지 않은 경우 시스템의 기본 언어가 사용자 클라이언트의 로케일로 설정되기를 바랍니다. 이제 기본 로케일 설정 중 낯선 문제가 발생했습니다. 저는 중국 출신이었습니다. 로캘은 기본적으로 zh_CN입니다. 우리 시스템이 Windows 서버에 배포 될 때 정확한 로케일 (zh_CN
)을 HttpServletResponse
에서 얻을 수 있지만 시스템이 배치되었을 때 우분투 리눅스 서버, 나는 항상 en_US
로케일을 HttpServletResponse
에서 얻습니다. 나는 그저 혼란 스럽다. HttpServletResponse's
로케일은 웹 브라우저와 같은 클라이언트에서 나오고, 2 개의 요청은 같은 로케일에서 왔지만 HttpServletResponse
에는 2 개의 다른 로케일로 나타난다.HttpServletResponse의 내 로케일이 항상 en_US 인 이유는 무엇입니까?
감사합니다. 혹시이 문제가 발생하여 결국이 문제를 해결 한 사람이 있는지 궁금합니다.
1. 시도는'이 ko 페이지의 경우, 시스템 구성을 확인 당신이 원하는대로로 변경하여 우분투 서버에 locale', 여기에 참조로 연결되는 링크는 다음과 같습니다 http://askubuntu.com/questions/ 89976/변경 방법 - 기본 로케일 - 우분투 - 10-10 - 서버 – Jaiwo99
감사합니다 !!! @ Jaiwo99 특정 언어로 설정하고 싶지 않다. HttpServletResponse의 기본 로케일이 클라이언트에서 제공되고 Linux 구성에서 가져 오지 않기를 바란다. 너는 어떤 생각을 가지고 있니? –
그런 다음 @taringamberini가 말했듯이,'CookieLocaleResolver'를 사용하십시오. – Jaiwo99