xpages 应用程序中的表达式语言原型
Expression language protoyping in xpages app
在一个应用程序中,我通过字符串属性文件提供多种语言。
在菜单中,link 中的引用可能如下所示:
<xp:link
text="#{strings.menu_label_mandate_request}"
title="#{strings.menu_label_mandate_request}"
value="/mandate.xsp" styleClass="plainLink">
</xp:link>
这工作正常。
现在我想在 java class 中定义 link 并通过重复控件循环遍历它,但要保持多语言支持。
在我的菜单 class 中,我创建了一个 Page 对象数组并设置了如下属性:
this.navigation = new ArrayList<Page>();
this.navigation.add(new Page("menu_label_mandate_request", "mandate.xsp", "fa fa-users", false));
...
我在 xsp 上添加了一个重复控件以启动 class(通过托管 bean):
<xp:repeat id="rptNavigation" rows="30"disableOutputTag="true" value="#{javascript:menu.navigation}" var="nav">
但是我在设置正确的原型时遇到了问题(如果可能的话):
<xp:link
text="#{strings.nav.label}"
title="#{strings.nav.label}"
value="/mandate.xsp" styleClass="plainLink">
</xp:link>
所以我收到错误消息:
java.util.MissingResourceException: 找不到资源包 java.util.PropertyResourceBundle,键导航
找不到资源包 java.util.PropertyResourceBundle、键导航
有人知道我忽略了什么吗?
您正在表达动态值 nav
应该作为文字对象而不是引用。写入:
<xp:link
text="#{strings[nav.label]}"
title="#{strings[nav.label]}"
value="/mandate.xsp" styleClass="plainLink">
</xp:link>
在一个应用程序中,我通过字符串属性文件提供多种语言。
在菜单中,link 中的引用可能如下所示:
<xp:link
text="#{strings.menu_label_mandate_request}"
title="#{strings.menu_label_mandate_request}"
value="/mandate.xsp" styleClass="plainLink">
</xp:link>
这工作正常。
现在我想在 java class 中定义 link 并通过重复控件循环遍历它,但要保持多语言支持。
在我的菜单 class 中,我创建了一个 Page 对象数组并设置了如下属性:
this.navigation = new ArrayList<Page>();
this.navigation.add(new Page("menu_label_mandate_request", "mandate.xsp", "fa fa-users", false));
...
我在 xsp 上添加了一个重复控件以启动 class(通过托管 bean):
<xp:repeat id="rptNavigation" rows="30"disableOutputTag="true" value="#{javascript:menu.navigation}" var="nav">
但是我在设置正确的原型时遇到了问题(如果可能的话):
<xp:link
text="#{strings.nav.label}"
title="#{strings.nav.label}"
value="/mandate.xsp" styleClass="plainLink">
</xp:link>
所以我收到错误消息: java.util.MissingResourceException: 找不到资源包 java.util.PropertyResourceBundle,键导航 找不到资源包 java.util.PropertyResourceBundle、键导航
有人知道我忽略了什么吗?
您正在表达动态值 nav
应该作为文字对象而不是引用。写入:
<xp:link
text="#{strings[nav.label]}"
title="#{strings[nav.label]}"
value="/mandate.xsp" styleClass="plainLink">
</xp:link>