[Oracle ADF] Установить программно checkbox в SelectManyCheckbox (DEPRECATED)


DEPRECATED !!! Не советую так делать! Не советую это все читать! Писал глупец АХаХаХаХаХаХаХ….

Чтобы разобраться, даже создавал тикет на community:
https://community.oracle.com/thread/3880605

Хотя эта хуета всеравно не работает как мне нужно.
Таким образом я могу пока установить 1 флажок. А что же делать если нужно 2 и более? Отпишусь как разберусь. Или помогите мне если знаете.

Оказалось, что для того, чтобы установить только 1 элемент, ничего из этого и не нужно. Но, возможно будет полезно, если нужно установить какие-нибудь значки по умолчанию.

Обратить внимание на value. В нем хранится список установленных checkbox.

1
2
3
4
5
6
7
8
9
<af:selectManyCheckbox id="my_selectManyCheckbox"  
                  valueChangeListener="#{MyBeanBean.onMyBeanPriorityChanged}"  
                  autoSubmit="true"  
                  required="false"
                  value="#{MyBeanBean.selectedCheckboxes}">  
                      <af:selectItem label="High" value="1" id="si4"/>  
                      <af:selectItem label="Middle" value="2" id="si5"/>  
                      <af:selectItem label="Low" value="3" id="si6"/>  
</af:selectManyCheckbox>


Список чекбоксов в бине, может выглядеть вот так:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private List<String> selectedCheckboxes;  

public void setSelectedCheckboxes(List<String> selectedCheckboxes) {  
    this.selectedCheckboxes = selectedCheckboxes;  
}  


public List<String> getSelectedCheckboxes() {    

    // Разкомментировать, если нужно по умолчанию установить checkbox
    //        List<String> selectedCheckboxes = new ArrayList<String>();  
    //        selectedCheckboxes.add("2");

    return selectedCheckboxes;  
}  


Собственно нахожу этот элемент на форме в бине и ….

1
2
RichSelectManyCheckbox my_selectManyCheckbox= (RichSelectManyCheckbox)task_filter_page_template.findComponent("my_selectManyCheckbox");  
my_selectManyCheckbox.setValue("1");

setValue - добавляет в список чекбокс у которого в value установлено значение 1.