Kolekcja selectManyCheckbox wewnątrz ui: powtórz wie, do którego elementu repeatera należy

Zajmuję się tworzeniem aplikacji internetowej za pomocą JSF 2. Moja aplikacja internetowa zawiera między innymi serię pytań umieszczanych pojedynczo (więc jedno pytanie jest widoczne jednocześnie) i ma wiele odpowiedzi (używam h: selectManyCheckbox).

Przechowuję pytania i możliwe odpowiedzi w tablicy ArrayList („gridQuestionListClone”), a użytkownicy odpowiadają (przed sprawdzeniem ich na końcu) w HashMapie („allQuestionUserAnswerMap”). (Mogę zmienić tryb przechowywania, jeśli wymaga tego odpowiedź).

Gdy użytkownik skończy odpowiadać na wszystkie pytania, chcę dać użytkownikowi możliwość ponownego sprawdzenia wszystkich pytań i odpowiedzi (chcę wczytać wstępnie odpowiedzi) na stronie. Tak więc wszystkie pytania i odpowiadające im pola wyboru (3 przy każdym pytaniu) z użytkownikami zaznaczają pola wyboru na jednej stronie.

Używam więc ui: powtarzam, aby przejść przez wszystkie pytania i możliwe odpowiedzi, i potrzebuję mechanizmu, aby sprawdzić odpowiednie pola wyboru (które zaznaczył użytkownik) i dać użytkownikowi możliwość zmiany jego odpowiedzi i po naciśnięciu przycisku przesyłania (na przykład), aby wiedzieć, które pola wyboru odpowiadają pytaniom. Szkic, aby rzeczy były jaśniejsze :)) (być może). Kiedy więc użytkownik skończy odpowiadać na wszystkie pojedyncze pytania, chcę mu pokazać:

Question 1:
a) answer1 - CHECKED
b) answer2 - UNCHECKED
c) answer3 - CHECKED
------------------------
Question 2:
a) answer1 - UNCHECKED
b) answer2 - UNCHECKED
c) answer3 - CHECKED
------------------------
Question 3:
a) answer1 - CHECKED
b) answer2 - CHECKED
c) answer3 - UNCHECKED
------------------------
.
.
.
Question n:
a) answer1 - CHECKED
b) answer2 - UNCHECKED
c) answer3 - CHECKED
------------------------ 
SUBMIT button

Użytkownik sprawdza swoje odpowiedzi i modyfikuje je w razie potrzeby i naciska przycisk wysyłania. Wtedy chciałbym mieć kolekcję jakiegoś rodzaju (lub wielu, które mnie to nie obchodzą, potem mógłbym je scalić), która zawiera numer pytania i możliwe odpowiedzi, takie jak w "allQuestionUserAnswerMap" na początku lub coś takiego .

Mój trywialny kod (niepoprawny):

<ui:repeat var="p" value="#{gridPopUpBean.gridQuestionListClone}">
                    <hr />
                    <h:panelGrid columns="2">
      ...
                        <h:panelGroup style="text-align: left">
                            <h:selectManyCheckbox
                                value="#{gridPopUpBean.oneQuestionUserAnswerList}"
                                layout="pageDirection">
                                <f:selectItem itemValue="a"
                                    itemLabel="#{p.a}" />
                                <f:selectItem itemValue="b"
                                    itemLabel="#{p.b}" />
                                <f:selectItem itemValue="c"
                                    itemLabel="#{p.c}" />
                            </h:selectManyCheckbox>
        ...
                        </h:panelGroup>
                    </h:panelGrid>
                </ui:repeat>

Jakieś pomysły?

questionAnswers(1)

yourAnswerToTheQuestion