1. 页面上如何实现国际化
两种方式
① 使用label 标签 格式如下:
<s:textfield name="username" label="%{getText('username')}"></s:textfield>
② 使用key
<s:textfield name="username" key="username"></s:textfield>
注:使用label时,需要使用OGNL强制解析:样式是:<label="%{getText('username')}">
<s:param value="birth"></s:param> //birth 是值栈中栈顶的属性值
</s:text>
3. 如果主题是 simple 主题
①. 这时 label 属性和 key 属性 都不起作用了,怎么办?
这时需要使用<s:text /> 标签,样式是: <s:text name="username"/>
//国际化资源文件中配置的格式
time=Time:{0}
//对应的页面显示样式
<s:text name="time">
<s:param value="date"></s:param>
</s:text>
------------------------------------
//方式二
//国际化资源文件中配置的格式
time2=Time:${date}
//对应的页面显示样式
<a href="testI18n .action?request_locale=zh_CN">中文</a>
<br>
<a href="index.jsp">To Index Page</a>
<!--
上面的中英文切换,不可以写成下面的样式!
<a href="i18n .jsp?request_locale=en_US">English</a>
<a href="i18n .jsp?request_locale=zh_CN">中文</a>
因为它不是一个action 请求,导致 i18n拦截器就没有工作,这样写不能实现 语言的切换
-->
两种方式
① 使用label 标签 格式如下:
<s:textfield name="username" label="%{getText('username')}"></s:textfield>
② 使用key
<s:textfield name="username" key="username"></s:textfield>
注:使用label时,需要使用OGNL强制解析:样式是:<label="%{getText('username')}">
2. 页面如何访问带占位符的国际化的资源文件?
<s:text name="time">// time是国际化资源文件中的键<s:param value="birth"></s:param> //birth 是值栈中栈顶的属性值
</s:text>
3. 如果主题是 simple 主题
①. 这时 label 属性和 key 属性 都不起作用了,怎么办?
这时需要使用<s:text /> 标签,样式是: <s:text name="username"/>
②. 提交按键怎么办?
<s:submit key="submit" value="%{getText('submit')}"></s:submit>
4.Date的显示方式
//方式一//国际化资源文件中配置的格式
time=Time:{0}
//对应的页面显示样式
<s:text name="time">
<s:param value="date"></s:param>
</s:text>
------------------------------------
//方式二
//国际化资源文件中配置的格式
time2=Time:${date}
//对应的页面显示样式
<s:text name="time2"></s:text>
5.中英文切换
<a href="testI18n .action?request_locale=en_US">English</a><a href="testI18n .action?request_locale=zh_CN">中文</a>
<br>
<a href="index.jsp">To Index Page</a>
<!--
上面的中英文切换,不可以写成下面的样式!
<a href="i18n .jsp?request_locale=en_US">English</a>
<a href="i18n .jsp?request_locale=zh_CN">中文</a>
因为它不是一个action 请求,导致 i18n拦截器就没有工作,这样写不能实现 语言的切换
-->