比较JSF页面中的Java ArrayList

时间:2012-09-13 15:28:01

标签: jsf arraylist

我想检查一个arrayList是否包含JSF中的特定元素。

ArrayList是包含几个值的nonTradList。 sProcessorView是Java类的实例

JSF页面如下所示 -

<h:commandButton id="p"
                 value="#{msgs['SP.Pend.Button.Label']}" 
                 type="button"
                 disabled="#{securityView.readOnlyUser or sPView.readOnly}">
    <rich:toolTip style="white-space:nowrap" value="Ctrl-Shft-P" />
    <a4j:support event="onclick"
                 oncomplete="if ((!#{sProcessorView.autoFetchNext}) &amp;&amp; 
                                   #{sProcessorView.nonTradList.contains('100')} &amp;&amp;
                                   #{spProcessorView.nonTradList.contains('111')} ) openSimplePop() ; 
                             else openModal();" />
</h:commandButton>

有没有EL已经存在或我必须写一些自定义标签?

我们还可以从这个JSF调用Java方法来获得结果吗?

任何帮助都非常感谢

1 个答案:

答案 0 :(得分:1)

您可以在ManagedBean上创建一个返回布尔值

的方法
public boolean containsValue() {
   //Check if the value is in the list...
}

在您的页面上,您可以执行此操作:

var showModal = #{bean.containsValue()};
if(showModal) {
   openModal();
} else openSimplePop();

这样做,您可以检查ManagedBean上的列表是否包含该值,如果是,则该方法将返回true,该值将在JS变量上设置。