如何将一个EL表达式与另一个EL表达式的结果进行比较 [英] How to compare an EL expression against the result of another EL expression
本文介绍了如何将一个EL表达式与另一个EL表达式的结果进行比较的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的Facelet中具有以下属性:
I have following attribute in my Facelet:
rendered="#{createTicketBaseBean.show == '#{I18N['key_please_select']}'}"
我正在尝试将属性文件中的值与属性进行比较,但出现以下错误:
I am trying to compare the value with property in my properties file, but I get following error:
错误解析:#{createTicketBaseBean.show =='#{I18N ['key_value_incident']}'' }`
Error Parsing: #{createTicketBaseBean.show == '#{I18N['key_value_incident']}'}`
但是当我将上述表达式替换为如下所示的硬编码值时:
But when I replace the above expression with a hard coded value like below:
rendered="#{createTicketBaseBean.show == 'incident'}"
然后工作正常。
推荐答案
这确实是无效的语法。您不能也不应嵌套EL表达式。您应该将#{}
视为一个整体范围,变量之间可以相互交互。
This is indeed invalid syntax. You can't and shouldn't nest EL expressions. You should see the #{}
as one whole scope where variables can interact with each other.
给出您想要的比较
createTicketBaseBean.show == I18N['key_please_select']
这是正确的语法:
rendered="#{createTicketBaseBean.show == I18N['key_please_select']}"
这篇关于如何将一个EL表达式与另一个EL表达式的结果进行比较的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文