Spring Roo! 언어 설정 추가하기
Spring/Spring Roo / 2011. 7. 13. 01:37
Spring Roo 는 i18n 을 제공합니다.
자동으로 생성되는 웹 페이지에 대해서도 다국어 설정이 가능합니다.
지난 포스트에서 생성했던 프로젝트를 이용하여 다국어 설정을 해보도록 하겠습니다.
RentShop 프로젝트에서 Roo Shell 을 실행시킵니다.
스페인어를 추가하려면 아래와 같은 명령을 통해 가능합니다.
roo> web mvc install language --code es
다시 톰캣을 실행시켜 확인해보니, 아래 스페인 국기가 새로 추가되고 해당 국기를 누르면 스페인어로 변경이 됩니다.
그렇다면 한국어로도 가능하다는 이야기!!
roo> web mvc install language --code ko
Could not parse language code
Could not parse language code
위와 같이 명령어를 치면 언어 코드를 파싱할 수 없다고 합니다.
한국어를 지원하기 위해서는 해당 기능을 제공하는 Spring Roo addon 을 생성해야 합니다.
이 작업을 하기 전에 famfamfam 에서 태극기 아이콘을 내려받고, RentShop 프로젝트의 아래 경로에 있는 messages.properties 를 번역하여 message_ko.properties 를 준비합니다.
(/RentShop/src/main/webapp/WEB-INF/i18n/messages.properties)
한국어 addon 을 위한 프로젝트의 디렉토리를 생성하고 Roo Shell 을 실행시킵니다.
messages_ko.properties 파일과 kr.png 파일을 프로젝트 상위 디렉토리에 위치시킨후 addon 을 생성시키고 해당 작업이 완료되면 packaging 을 진행합니다.
roo> addon create i18n --topLevelPackage kr.co.vicki.roo.addon.i18n --locale ko --messageBundle ../messages_ko.properties --flagGraphic ../kr.png
roo> perform package
roo> perform package
Spring Roo addon 은 OSGi 번들로 결과물이 나오게 되는데 해당 번들을 install 시켜 사용이 가능하도록 합니다.
(Roo Shell 에서 osgi ps 명령으로 해당 번들의 상태 확인이 가능합니다.)
roo> osgi start --url file:///D:/temp/roo/i18n/target/kr.co.vicki.roo.addon.i18n-0.1.0.BUILD-SNAPSHOT.jar
roo> osgi ps
START LEVEL 99
ID State Level Name
...
[ 66] [Active ] [ 1] kr-co-vicki-roo-addon-i18n (0.1.0.BUILD-SNAPSHOT)
roo> osgi ps
START LEVEL 99
ID State Level Name
...
[ 66] [Active ] [ 1] kr-co-vicki-roo-addon-i18n (0.1.0.BUILD-SNAPSHOT)
이제 다시 한국어에 대한 다국어를 추가합니다.
roo> web mvc install language --code ko
어색한 번역이지만 잘나옵니다. 호호홋