struts2国际化 用户选择语言问题
将用户选择的语言通过request_locale=en_US传值给action,可是我在struts.xml里创建的action:<packagename="login"...
将用户选择的语言通过request_locale=en_US传值给action,可是我在struts.xml里创建的action:
<package name="login" extends="struts-default" namespace="/login" >
<action name="login">
<result>/login.jsp</result>
</action>
</package>
没起作用啊,求高手帮忙啊…… 展开
<package name="login" extends="struts-default" namespace="/login" >
<action name="login">
<result>/login.jsp</result>
</action>
</package>
没起作用啊,求高手帮忙啊…… 展开
3个回答
展开全部
国际化
----------------------------------------------
1, 类名.properties
2, package.properties
3, 上层包的 package.properties
4, 配置指定文件
在 struts.properties 配置:
struts.custom.i18n.resources=testmessages,testmessages2
提取国际化文本
-----------------------------------------
action 类中:
getText(键)
jsp 中:
1, 从 action 转发到 jsp :
<s:property value="%{ getText('键') }"
2, <s:i18n name="资源文件">
<s:text name="键" />
</s:i18n>
----------------------------------------------
1, 类名.properties
2, package.properties
3, 上层包的 package.properties
4, 配置指定文件
在 struts.properties 配置:
struts.custom.i18n.resources=testmessages,testmessages2
提取国际化文本
-----------------------------------------
action 类中:
getText(键)
jsp 中:
1, 从 action 转发到 jsp :
<s:property value="%{ getText('键') }"
2, <s:i18n name="资源文件">
<s:text name="键" />
</s:i18n>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
大雅新科技有限公司
2024-11-19 广告
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
展开全部
你是说语言没正确吗?你得要国际化设置才行
创建一个 .properties 文件
创建一个 .properties 文件
追问
这些都做了,就是那个action有问题
追答
额!那个没关系的 随便写个吗 就调个方法就行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你配置的 <action name="login" class="">
<result>/login.jsp</result>
</action>
<result>/login.jsp</result>
</action>
追问
class的值是action类吗,action类不会写啊杯具,能不能帮我写个,我可以提高悬赏……
追答
@Action("langLocale")
@Namespace("/")
@Result(name="lang",location="/WEB-INF/content/login.jsp")
public class LangLocaleAction extends ActionSupport{
//实现了国际化的action
private String request_locale;
/*
* 根据用户在下拉框选择的语言 加载相应的资源文件
*
*/
@Override
public String execute() throws Exception {
System.out.println("sssssssssssssssss");
if((Locale.US).equals(request_locale)){
ResourceBundle bundle = ResourceBundle.getBundle("messageResource", Locale.US);
}else if((Locale.CHINA).equals(request_locale)){
ResourceBundle bundle = ResourceBundle.getBundle("messageResource",Locale.CHINA);
}
return "lang";
}
//getter and setter....
public String getRequest_locale() {
return request_locale;
}
public void setRequest_locale(String request_locale) {
this.request_locale = request_locale;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询