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 在JSF2 xhtml页面中声明并使用变量_Jsf 2 - Fatal编程技术网

Jsf 2 在JSF2 xhtml页面中声明并使用变量

Jsf 2 在JSF2 xhtml页面中声明并使用变量,jsf-2,Jsf 2,我在JSTL中使用来使用buttonText变量来设置文本 有人告诉我如何在JSF EL中实现这一点吗? 问题在这里提出,但被告知作为单独问题提出 编辑: 我已经添加了一个链接上面的细节,但这里是再次 我在struts2项目中使用JSTL <s:if test="person==null || person.id==null || person.id==''"> <s:set var="buttonText" value="getText('p

我在JSTL中使用
来使用buttonText变量来设置文本

有人告诉我如何在JSF EL中实现这一点吗?

问题在这里提出,但被告知作为单独问题提出

编辑:

我已经添加了一个链接上面的细节,但这里是再次

我在struts2项目中使用JSTL

 <s:if test="person==null || person.id==null || person.id==''">
                <s:set var="buttonText" value="getText('person.button.add')"/>
            </s:if>
            <s:else>
                <s:set var="buttonText" value="getText('person.button.edit')"/>
            </s:else>

我想在JSF2中使用相同的方法,但要使用表达式语言。我将值保存在一个名为
buttonext
的变量中,并在下面的某个地方访问它,比如
{buttonext}
。我需要解决如何在
EL
中写入变量并使用它的问题。希望它是清楚的

我只需要
代码行的解决方案


谢谢

您可以使用
ui:param

通过以下方式:

<ui:param name="buttonText" value="#{myBean.MyValue}" />



以后再这样使用

<h:outputText value="#{buttonText}"/>



另一种选择是使用
请澄清您的问题?您到底想知道什么?警告不要使用当前高分答案的第一个选项中提到的
!总是使用
,没有借口。为什么,@BalusC?这是因为每次使用这个表达式时都会重新计算它吗?@bruno:上面链接的dupe中解释了这一点。简而言之:它不是
最初的用途。这与试图用锤子固定螺钉的问题完全相同:它在某些情况下可能会起作用,但对于这项工作来说,它是完全错误的工具。
<ui:param name="buttonText" value="someText#{myBean.MyValue}" />
<h:outputText value="#{buttonText}"/>
<c:set var="buttonText" value="#{myBean.MyValue}" />