2009/01 - 해당되는 글 12건

JBoss를 사용하다 한글 처리에 대한 질문을 많이 받고 있습니다. 다국어 지원까지 포함해야 하는 경우도 종종 있습니다.

JBoss에서 한글 처리를 하기 위해서는 2가지의 작업이 필요합니다.

1. Web Application에 filter를 등록하기

첨부하는 파일을 이용하여 web.xml에 Encoding Filter를 등록하도록 합니다.
다음의 내용을 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>

JBoss level에서 엄격하게 스펙을 적용하는 통에.. 위의 url-pattern은 * 이 아니고 /* 이어야 합니다.

2. JBoss의 $SERVER_HOME/deploy/jboss-web.deployer/server.xml 파일을 열어 필요한 Connector 부분에 다음의 attribute를 추가합니다. JBoss의 default encoding은 ISO-8859-1입니다.
<Connector ... URIEncoding="UTF-8"/>

위와 같이 설정하면 다국어 지원까지 가능한 애플리케이션을 만들 수 있습니다.


|

일반적으로 server에서 사용하는 라이브러리를 해당 서버 전체의 classpath에 적용시킬 경우 $SERVER_NAME/lib 디렉토리에 jar파일을 가져다 놓으면 모든 애플리케이션에서 사용할 수 있게 됩니다.

그렇지 않으면 WAR의 WEB-INF/lib나 EAR단위의 APP-INF/lib 디렉토리에 필요한 라이브러리를 가져다 놓으면 됩니다.
만약 위에서 제시한 두 가지 방법을 모두 사용하고 싶지 않고 나만의 lib 디렉토리를 만들어서 그 곳에 확장 라이브러리를 사용하고 싶은 경우가 있을 겁니다. 이 때에 다음과 같은 option을 run.sh 를 구동시킬 때 "-p" 옵션을 주게 되면 사용자가 정의한 위치를 class loader를 통해 올리게 됩니다.

run.sh -c default -p lib/ext -b 0.0.0.0
|

놀새~'s Blog is powered by Daum & tistory