问题描述:
类Locales保存支持的语言。注意 Locale current ,问题所在,继续看下去。
public class Locales
{
    private Locale current;
    public void setCurrent(Locale current)
    {
        this.current = current;
    }
    public Map<String, Locale> getLocales()
    {
        Map<String, Locale> locales = new Hashtable<String, Locale>();
        ResourceBundle bundle = ResourceBundle.getBundle("messageResource" , current);
        locales.put(bundle.getString("usen"), Locale.US);
        locales.put(bundle.getString("zhcn"), Locale.CHINA);
        return locales;
    }
}页面 selectlanguage.jsp 为选择语言页面。
<s:set name="SESSION_LOCALE" value="#session['WW_TRANS_I18N_LOCALE']"/>
<s:bean id="locales" name="com.gc.locale.Locales">
    <s:param name="current" value="#SESSION_LOCALE == null ? locale  : #SESSION_LOCALE"/>
</s:bean>
<form action="<s:url/>" id="langForm" 
    style="background-color:#bbbbbb; padding-top: 4px; padding-bottom: 4px;">
    <s:text name="languag"/>
    <s:select label="Language" list="#locales.locales" listKey="value" listValue="key"
        value="#SESSION_LOCALE == null? locale : #SESSION_LOCALE"
        name="request_locale" id="langSelecter" 
        onchange="langSelecter_onChanged()" theme="simple"/>
</form>struts.xml 配置文件 片段
<package name="gc" extends="struts-default">
        <action name="*">
            <result>/{1}.jsp</result>
        </action>
    </package>问题来了:
无法实现用户选择的语言显示
页面设置了参数 <s:param name="current" value="#SESSION_LOCALE == null ? 'en-US' : #SESSION_LOCALE"/>
到类 Locales 是如何封装的?数据类型不同?
参考调试信息,传入类的 current 为 NULL
页面的 "#SESSION_LOCALE == locale ? 'en-US' : #SESSION_LOCALE"/>        locale取不出来?
想象办法?