Struts 2消息资源查找问题

时间:2013-11-10 10:58:19

标签: java jsp struts2 localization

我有一个带有Struts 2.3的网络服务器(带有常规插件)

我在处理MessageResources本地化方面遇到了一些问题。 这是我的目录布局(简化):

  • global.properties
  • it.group.projectName
    • 操作
      • LoginAction.java
      • LoginAction.properties
      • 用户
        • SampleAction.java
        • SampleAction.properties
        • package-info.java(需要约定插件来定义命名空间)
        • package.properties

Package-info.java:

@org.apache.struts2.convention.annotation.ParentPackage(value = "users") 

package it.group.projectName.actions.users;

现在,如果我要求global.propertiesLoginAction.properties中包含的字符串(使用<s:text name="navbar.myPage"/>),一切正常。

但是,当我从package.propertiesSampleAction.properties对应的页面中询问SampleActionsample.jsp中包含的任何字符串时,似乎无法找到它并且只是打印出钥匙。有什么想法吗?

根据this文章(以及其他文章),Struts2应该加载这些文件,但它似乎在约定插件和命名空间重新定义方面存在一些问题。

1 个答案:

答案 0 :(得分:1)

根据那篇文章,你应该仔细阅读。获取消息资源的另一种方法是使用getText。确保当前区域设置为默认值,并且操作扩展为ActionSupport

<s:property value="getText('navbar.myPage')" />