Struts2 jsp在表单提交后显示属性名称而不是值

时间:2013-04-12 11:03:21

标签: java jsp struts2 internationalization

我有一个jsp包含很多s:texts:property&#39; s。其中还有s:iterators:text个。s:text&#39}。我面临的问题是,一旦我提交表单并尝试在同一个JSP上显示某些内容,就会使用s:propertylogin.username=Username 所有<s:text name="login.username" /> &{39}显示与仅显示属性名称的属性对应的值。

喜欢

login.username

JSP:

Username

在提交表单并返回到同一个JSP时,属性名称{{1}}显示在用于显示{{1}}的页面上。知道为什么吗?

2 个答案:

答案 0 :(得分:1)

操作堆栈上可能没有i18n拦截器,或者您没有使用JVM使用的语言环境或默认语言环境的资源包。

  

基本上,i18n Interceptor将一个语言环境推入了   每个请求都有ActionContext映射。框架组件即   支持本地化都使用ActionContext语言环境。


答案 1 :(得分:0)

如果您为每个操作使用一个属性文件来存储i18n消息,那么您可以遇到以下情况:

ActionA.java -> 1.jsp
ActionB.java -> 1.jsp
ActionA.properties (all i18n messages are defined only here)

在ActionA上一切正常,但在ActionB上提交后stuts无法找到相应的i18n消息。