Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 如何在EL中使用映射键,EL是静态字符串和EL变量的串联_Jsf 2_Primefaces_El - Fatal编程技术网

Jsf 2 如何在EL中使用映射键,EL是静态字符串和EL变量的串联

Jsf 2 如何在EL中使用映射键,EL是静态字符串和EL变量的串联,jsf-2,primefaces,el,Jsf 2,Primefaces,El,我有一个里面有一个。在我的bean中,我有一个映射,我想在其中显示它的值。我需要向这个映射传递一个键,它是someString和{object.firstName}的串联。我希望这样做能奏效: value="#{bean.map['someString'+object.firstName]}" 如何实现这一点?您可以通过创建一个新的EL变量,将字符串和EL表达式内联,从而在EL中连接字符串。你可以用它 <c:set var="key" value="someString#{object.

我有一个里面有一个。在我的bean中,我有一个映射,我想在其中显示它的值。我需要向这个映射传递一个键,它是someString和{object.firstName}的串联。我希望这样做能奏效:

value="#{bean.map['someString'+object.firstName]}"

如何实现这一点?

您可以通过创建一个新的EL变量,将字符串和EL表达式内联,从而在EL中连接字符串。你可以用它

<c:set var="key" value="someString#{object.firstName}" />
<p:commandLink value="#{bean.map[key]}" ... />

如果您还没有使用EL2.2,但是正在使用EL2.1,那么您可以随时安装以具有相同的功能。

AC_先生1985没有响应,但我有一些与此相关的工作代码

                            <h:panelGrid columns="1" cellpadding="5" style="width:100%">
                                <p:inputTextarea id="factsText" style="width:100%; height:100%;" rows="18" cols="100" 
                                value="#{property.model.property.facts[property.model.factsLanguage.code]}"
                                counter="display" maxlength="2000" counterTemplate="{0} characters remaining." autoResize="false" />
                                <h:outputText id="display" />
                            </h:panelGrid>
在这里我有一个组合框,我可以选择一种语言。然后从所选语言的映射中检索文本

像往常一样,感谢我的巴卢斯克对你的无价帮助


艾伦

Thanx很多巴卢斯克将测试并让你知道我的发现。
                            <h:panelGrid columns="1" cellpadding="5" style="width:100%">
                                <p:inputTextarea id="factsText" style="width:100%; height:100%;" rows="18" cols="100" 
                                value="#{property.model.property.facts[property.model.factsLanguage.code]}"
                                counter="display" maxlength="2000" counterTemplate="{0} characters remaining." autoResize="false" />
                                <h:outputText id="display" />
                            </h:panelGrid>