表达式语言 - 如何访问整个数组

Expression Language - how to access whole array?

本文关键字:访问 数组 语言 何访问 表达式      更新时间:2023-09-26

我使用以下代码:

<p:inputText label="Bezeichnung"
     required="#{param['form_inhalt:artikeldatatable[0]:entfernen']==null}"
          value="#{artikeldata.bezeichung}"></p:inputText>

我需要访问这个"artikeldatatable"中的所有ID。我该怎么做?如果表中的任何按钮被激活,它应该返回 false。这适用于一个按钮 [0],但我需要检查 ID 数组中的所有按钮。

#param['form_inhalt:artikeldatatable:0:entfernen']==nullANDparam['form_inhalt:artikeldatatable:1:entfernen']==null}

有没有办法检查整个数组?

基本上我正在寻找像 * 这样的通配符对于来自的所有 ID

param['form_inhalt:artikeldatatable:0:entfernen']

自param['form_inhalt:artikeldatatable:99999:entfernen']

还是我必须编写一个迭代数组并返回 true 的 java 脚本函数?

如果是这样,我如何访问 #{参数...通过Javascript的东西?

谢谢!

private boolean checkButtonBeschaffung() {
        boolean globalValue = false;
        FacesContext facesContext = FacesContext.getCurrentInstance();
        Map<String, String> parameterMap = (Map<String, String>) facesContext.getExternalContext().getRequestParameterMap();
        for (int i = 0; i < 50; i++) {
            StringBuilder sb = new StringBuilder("form_inhalt:artikeldatatable:");
            sb.append(i);
            sb.append(":entfernen");
            String param = parameterMap.get(sb.toString());
            // Wenn irgendeiner der entfernen Buttons gedrueckt wurde, dann return = false
            if (param == null) {
                globalValue = true;
            } else {
                globalValue = false;
                break;
            }
        }
        return globalValue;
    }

我正在运行请求参数映射,如果它们被按下,我将检查所有按钮(确定到 50)。