1

我是 struts2 的新手,我想在我的 Web 应用程序中添加 i18n。我在文档中有这样的代码:

<s:url id="localeEN" namespace="/" action="locale">
    <s:param name="request_locale">en</s:param>
</s:url>
<s:url id="localeruRU" namespace="/" action="locale">
    <s:param name="request_locale">ru_RU</s:param>
</s:url>
<s:a href="%{localeEN}">English</s:a>
<s:a href="%{localeruRU}">Russian</s:a>

我们需要像这样添加动作类:

public class LocalizationAction extends ActionSupport {
    public String execute() {
        return SUCCESS;
    }
}

在 struts.xml 中我们添加:

<struts>
    <constant name="struts.custom.i18n.resources" value="global"/>
    <constant name="struts.devMode" value="true"/>

    <package name="default" namespace="/" extends="struts-default">
        <action name="locale" class="by.bulgak.newsmanager.action.LocalizationAction">
            <result name="success">index.jsp</result>
        </action>
    </package>
</struts>

我也有名称global和属性文件global_ru_RU

我做了我从教程中读到的所有内容,但是当我在我的 jsp 页面中设置参数时,我的 IDE 告诉我该名称request_locale是未知属性..

请告诉我我的错误在哪里。

在此处输入图像描述

我的 IDE 不支持它,这就是为什么当我在运行我的应用程序时想更改语言时,我的 IDE 不会在 struts2 中调用 I18n 方法

4

1 回答 1

1

Struts2 不会将默认 i18n 属性与英语相关联。

当我像这样设置默认属性时:property_name_en.properties它工作正常。

但我不明白为什么会这样。我看到很多例子,我什至将它们启动到我的机器中,它们工作正常,但我没有工作..可能有人知道什么是问题?

于 2012-09-05T09:31:29.127 回答