Far*_*san 3 java jsf jstl el jsf-2
我在h:commandButton中有这个属性
disabled="#{ not ( ( nodeChild.children == null or empty nodeChild.children ) and ( not setupManager.currentTerminals ) ) }"
Run Code Online (Sandbox Code Playgroud)
如果它渲染disabled="false"一切正常但另一个抛出此异常
SEVERE: javax.faces.FacesException: java.lang.IllegalArgumentException: Cannot convert [] of type class java.util.ArrayList to class java.lang.Boolean
Run Code Online (Sandbox Code Playgroud)
写上述条件的最佳方法是什么?我可以使用括号吗?
该#{setupManager.currentTerminals}显然是返回一个ArrayList,从而表达#{not setupManager.currentTerminals},因为它不是一个会失败Boolean.使用not empty而不是not.这是一个重写(注意也empty包括null,你之前不需要进行nullcheck).
disabled="#{not empty nodeChild.children and not empty setupManager.currentTerminals}"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4282 次 |
| 最近记录: |