コードリスト¶
CodeListInterceptorのfallbackToに関する注意点¶
CodeListInterceptorのfallbackToはデフォルトで Locale.getDefault() が設定され、日本語環境では ja_JP です。 intra-mart Accel Platform では日本語の場合にはロケールの値を ja としていますので、 fallbackTo を使うパターンでは ja_JP に対応するコードリストが取得できません。 これを回避するための方法をに以下に2つ紹介します。
CodeListInterceptor の fallbackTo を設定する方法
classes/META-INF/spring/applicationContext-im_tgfw_web.xml のCodeListInterceptorの設定にfallbackToを明示します。
<!-- MVC interceptors --> <mvc:interceptors> .. 略 .. <!-- code list --> <mvc:interceptor> <mvc:mapping path="/**" /> <!-- configure the path to specify the package of controllers. --> <bean class="org.terasoluna.gfw.web.codelist.CodeListInterceptor"> <property name="codeListIdPattern" value="CL_.+" /> <property name="fallbackTo" value="ja" /> </bean> </mvc:interceptor> </mvc:interceptors>SimpleI18nCodeList で ja と ja_JP のパターンを設定する方法
それぞれのコードリストに対して、ja と ja_JP に同じマップを設定します。
<util:map id="CL_CODELIST_01_JA"> <entry key="0" value="なし" /> <entry key="1" value="あり" /> </util:map> <bean id="CL_CODELIST_01" class="org.terasoluna.gfw.common.codelist.i18n.SimpleI18nCodeList"> <property name="rows"> <util:map> <entry key="en"> <util:map> <entry key="0" value="No" /> <entry key="1" value="Yes" /> </util:map> </entry> <entry key="ja_JP" value-ref="CL_CODELIST_01_JA" /> <entry key="ja" value-ref="CL_CODELIST_01_JA" /> </util:map> </property> </bean>