2014-07-04 17 views
0

在三元表達式中使用literal和ui param值時,我收到EL分析錯誤。解析錯誤發生在三態條件爲假時(:'width:'width';')。有沒有辦法解決這個問題。 (注意:width是一個ui:參數名稱)。在EL三元中使用ui參數值和升

<fieldset style="#{(empty width)? '' :'width:'width';'}; class="standardSectionTemplate"> 
    <ui:insert name="content" /> 
</fieldset>   

回答

1

,除非你使用EL 3.0, 在以前的版本中EL你可以調用每個字符串的串連方法不能連接這樣的字符串中EL

像這樣

style="#{ empty width ? '' : 'width:'.concat(width).concat(';') }" 

EL 3.0,你可以做這樣的

style="#{ empty width ? '' : 'width:' += width += ';' }" 
+0

使用CONCAT時得到空指針錯誤: 顯示java.lang.NullPointerException \t javax.el.CompositeELResolver .invoke(CompositeELResolver.java:225) \t javax.el.CompositeELResolver.invoke(CompositeELResolver.java:225) \t org.apache.el.parser.AstValue.getValue(AstValue.java:173) \t org.apache.el.parser.AstChoice.getValue(AstChoice.java:46) \t org.apache.el.ValueExpressionImpl。 getValue(ValueExpressionImpl.java:184) \t com.sun.faces.facelets.el.E​​LText $ ELTextVariable.toString(ELText.java:217) \t com.sun.faces.facelets.el.E​​LText $ ELTextComposite.toString( ELText.java:157) –