如何在EL中使用嵌套条件运算符显示字符串值

时间:2020-08-11 15:52:16

标签: jsf nested el conditional-operator

我想在EL中使用条件运算符来显示字符串值而不是整数值,当我在两个条件下使用时,它可以工作,但是在两个以上条件下,我在EL中出现错误。

工作:

<h:outputText value="#{item.status == 'ACTIVATION_BEING_PROCESSED' ? 'OK' : 'KO'}"/>

不起作用:

 <h:outputText value="#{item.status == 1 ? 'ACTIVATION_OK': 
                        item.status == 0 ? 'ACTIVATION_KO' :
                        item.status == -1 ? 'UNDEFINED':
                        item.status == 2 ? 'ACTIVATION_TO_BE_PROCESSED' :
                        item.status == 99 ? 'ACTIVATION_BEING_PROCESSED' :
                        item.status == 98 ? 'ASSOCIATED':
                        item.status == 4 ? 'EN_COURS_GMD':
                        item.status == 12 ? 'KO_GMD' : '' }"/> 

我遇到了这个错误:

 org.apache.el.parser.ParseException: Encountered " "?" "? "" at line 1, 
  column 61.
  Was expecting one of:
   "}" ...
    "." ...
   "[" ...
   ">" ...
   "gt" ...
"<" ...
"lt" ...
">=" ...
"ge" ...
"<=" ...
"le" ...
"==" ...
"eq" ...
"!=" ...
"ne" ...
"&&" ...
"and" ...
"||" ...
"or" ...
"*" ...
"+" ...
"-" ...
"/" ...
"div" ...
"%" ...
"mod" ...

0 个答案:

没有答案