xpages应用程序中的表达式语言原型

xpages应用程序中的表达式语言原型,xpages,el,Xpages,El,在一个应用程序中,我通过字符串属性文件提供多种语言 在菜单中,参考In链接可能如下所示: <xp:link text="#{strings.menu_label_mandate_request}" title="#{strings.menu_label_mandate_request}" value="/mandate.xsp" styleClass="plainLink"> </xp:link> this.navigation = new Ar

在一个应用程序中,我通过字符串属性文件提供多种语言

在菜单中,参考In链接可能如下所示:

<xp:link
    text="#{strings.menu_label_mandate_request}"
    title="#{strings.menu_label_mandate_request}"
    value="/mandate.xsp" styleClass="plainLink">
</xp:link>
this.navigation = new ArrayList<Page>();
        this.navigation.add(new Page("menu_label_mandate_request", "mandate.xsp", "fa fa-users", false));
...

这很好用

现在我想在java类中定义链接,并通过一个repeat控件在其中循环,但要保持多语言支持

在我的菜单类中,我创建了一个页面对象数组,并按如下方式设置属性:

<xp:link
    text="#{strings.menu_label_mandate_request}"
    title="#{strings.menu_label_mandate_request}"
    value="/mandate.xsp" styleClass="plainLink">
</xp:link>
this.navigation = new ArrayList<Page>();
        this.navigation.add(new Page("menu_label_mandate_request", "mandate.xsp", "fa fa-users", false));
...
this.navigation=new ArrayList();
这个.navigation.add(新页面(“菜单标签任务请求”、“任务.xsp”、“fa用户”,false));
...
我在xsp上添加了一个repeat控件来初始化该类(通过托管bean):


但是,我在设置正确的原型时遇到问题(如果可能):


因此,我得到了错误消息: java.util.MissingResourceException:找不到捆绑包java.util.PropertyResourceBundle的资源,键nav 找不到捆绑包java.util.PropertyResourceBundle的资源,键nav


有人知道我忽略了什么吗?

您将动态值
nav
表示为文字对象,而不是引用。写:

<xp:link
    text="#{strings[nav.label]}"
    title="#{strings[nav.label]}"
    value="/mandate.xsp" styleClass="plainLink">
</xp:link>

谢谢你的回答。我几乎要回到SSJS:eval(“strings['”+nav.getLabel()+“]])