programming/spring_framework

스프링mvc에서 언어 변경하기

labj 2012. 3. 21. 12:29

스프링mvc에서 언어 변경하기

 

 - springmvc-context.xml

 

 <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
  <property name="interceptors">
   <list>
    <ref bean="controllerLoggingInterceptor" />
    <ref bean="localeChangeInterceptor" />
   </list>   
  </property>
  <property name="mappings">
   <props>
    <prop key="/**/*.static">htmlController</prop>
   </props>
  </property>
 </bean>

 

 ...

 

 <!-- 
   - Locale Setting
   -->
 <bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver" >
 </bean>

 <!-- 
   - Locale Changer
   -->
 <bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
  <property name="paramName">
   <value>sLang</value>
  </property>
 </bean>

 

 - 개별 HandlerMapping 마다 "localeChangeInterceptor"을 선언해서 사용한다.

 <!--
   -  [ ] HandlerMapping setting
   -->
 <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
  <property name="interceptors">
   <ref bean="localeChangeInterceptor" />
  </property>
  <property name="mappings">
   <props>
    <prop key="/sample.do">sampleCtrl</prop>
    <prop key="/login.do">sampleCtrl</prop>
    <prop key="/logout.do">sampleCtrl</prop>
    <prop key="/loginBack.do">sampleCtrl</prop>
    <prop key="/lang.static">sampleCtrl</prop>
   </props>
  </property>
 </bean>

 

 - 선언을 안 하는 방법을 http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte:ptl:internationalization  제시한다. 그러나 나는 2.06 버전으로 사용 못하는것 같다. 2.5 이상이어야 하나 ^^