Colección de selectManyCheckbox dentro de una ui: repetición sabe a qué elemento del repetidor pertenece

Estoy desarrollando una aplicación web utilizando JSF 2. Mi aplicación web, entre otras cosas, contiene una serie de preguntas de una en una (por lo tanto, una pregunta es visible a la vez) y tengo varias respuestas (uso h: selectManyCheckbox).

Almaceno las preguntas y las posibles respuestas en un ArrayList ("gridQuestionListClone") y las respuestas de los usuarios (antes de revisarlas al final) en un HashMap ("allQuestionUserAnswerMap"). (Podría cambiar la modalidad de almacenamiento si la respuesta lo exige).

Cuando el usuario termine de responder a todas las preguntas, quiero darle al usuario la posibilidad de volver a verificar todas las preguntas y respuestas (quiero que las respuestas estén precargadas) en una página. Entonces, todas las preguntas y sus correspondientes casillas de verificación (3 en cada pregunta) con los usuarios marcadas en las casillas de verificación en una página.

Así que utilizo ui: repito para revisar todas las preguntas y posibles respuestas y necesito un mecanismo para marcar las casillas de verificación correctas (que el usuario marcó) y dar al usuario la posibilidad de cambiar sus respuestas y cuando presiono un botón de envío. (por ejemplo) para saber qué casillas de verificación corresponden a cada pregunta. Un boceto para aclarar las cosas :)) (quizás). Entonces, cuando el usuario termine de responder todas las preguntas individuales, quiero mostrarle:

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

El usuario verifica sus respuestas y las modifica si es necesario y presiona el botón enviar. Entonces me gustaría tener una colección de algún tipo (o múltiples que realmente no me importa, luego podría fusionarlas) que contiene el número de la pregunta y las posibles respuestas como en "allQuestionUserAnswerMap" al comienzo o algo así. .

Mi código trivial (no correcto):

<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>

¿Algunas ideas?

Respuestas a la pregunta(1)

Su respuesta a la pregunta