在 s:select 下拉列表中使用动态值基于 Struts 2 中的区域设置的资源包

问题描述

我正在使用下拉列表来显示给定字段的状态,但是,我无法根据区域设置的资源包填充该字段。在任何情况下,该字段都以仅英文显示

status 通过 enum 填充到列表中,其值类似于

public enum Status{
    REQUESTED(0),CANCELED(-1),VALIDATED(10),ONGOING(20),FINISHED(30);

    private int intValue;

    private Status(int intValue) {
        this.intValue = intValue;
    }

    public int getIntValue() {
        return intValue;
    }

    public void setIntValue(int intValue) {
        this.intValue = intValue;
    }

    public String getName() {
        return this.name();
    }

    public static Status getStatusFromEnum(int code) {
        for (Status status : RackMaintenanceRequestStatus.values()) {
            if (status.getIntValue() == code) {
                return status;
            }
        }
        return null;
    }

    public static Status getStatusFromString(String name) {
        for (Statusstatus : Status.values()) {
            if (status.name().equalsIgnoreCase(name)) {
                return status;
            }
        }
        return null;
    }
}

我已在 ApplicationResource.properties 属性文件中为 respective fields 中的 enum 添加了翻译。

这是我的 s:select 代码

<s:select id="requestStatus"
value="myFormBean.filterStatus"
name="myFormBean.filterStatus"
list="myFormBean.listStatus"
style="width:100%;" cssClass="form-control select2"
listKey="intValue" listValue="name" multiple="true"
size="5" />

如何根据 enumLocale 动态填充值?理想情况下,我尝试使用 fmt message key 执行此操作,如下所示,但此处的 s:select 不会发生这种情况。

<fmt:message key="${name}"></fmt:message>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)