WAS/JBoss

[Tips] JBoss에서 한글 처리

투칼론 2016. 3. 28. 14:23
반응형


JBoss에서 한글 처리를 하기 위해서는 인코딩을 해야 합니다. 예전에는 EUC-KR을 많이 사용하고 있으나, 최근에는 다국어 지원을 포함하기 위해 UTF-8을 많이 사용합니다. 

HTTP 호출 방식에서 GET방식과 POST 방식을 고려해야 합니다. GET 방식은 URL을 통해 정보를 전달하고, POST 방식은 정보를 body부분으로 전달하기 때문에 설정 방법이 다릅니다.

 

1. GET 방식 - URI 인코딩 설정


GET방식은 URI 부분으로 정보가 전달되기 때문에 아래와 같이 URI_ENCODING을 설정하면 됩니다.


-Dorg.apache.catalina.connector.URI_ENCODING=UTF-8



2. POST 방식 - web.xml에 filter 등록

web.xml에 Encoding Filter를 등록하여, body에 들어오는 메시지를 UTF-8로 인코딩합니다. 설정은 아래와 같이 web.xml에 설정을 합니다.

<filter>
   <filter-name>Set Character Encoding</filter-name>
   <filter-class>filters.SetCharacterEncodingFilter</filter-class>
   <init-param>
       <param-name>encoding</param-name>
       <param-value>UTF-8</param-value>
   </init-param>
</filter>

<filter-mapping>
   <filter-name>Set Character Encoding</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>



3. 문자열 character set - file.encoding 설정


파일이나 소켓 등으로 문자열 IO처리시, 문자열의 default charset은 -Dfile.encoding의 지정값을 따릅니다. 지정하지 않을경우 시스템의 기본 charset을 따르게 됩니다.



-Dfile.encoding=UTF-8

- End -