How to render <hx:dataIterator> before <h:selectBooleanCheckbox>

Hi!

As you can see below I'm making use of "selectBooleanCheckbox" whose value is derived from the "dataIterator". But in real time scenario, the component "selectBooleanCheckbox" gets rendered before "dataIterator" because of which a NullPointerException gets thrown. But instead of a "selectBooleanCheckbox", if I use "outputText" inside the "dataIterator" I get the data displayed correctly.  Can anyone please let me know how to render "dataIterator" before rendering the "selectBooleanCheckbox".



One more thing, I don't want to use "dataTable" instead of "dataIterator". My presentation logic doesn't allow me to do that.

Thanks in advance guys,
Kartheek.
<hx:dataIterator value="#{row.subscriptions}" var="dataCol"
								id="subscriptionsTable1" >
								<h:selectBooleanCheckbox id="checkbox1"
									value="#{dataCol.emailSubscribed}">
								</h:selectBooleanCheckbox>
							</hx:dataIterator>

Open in new window

kkkraoAsked:
Who is Participating?
 
kkkraoConnect With a Mentor Author Commented:
Ok...... I guess no one has a solution/hack for it.

Well, I made my stuff work by removing "<h:selectBooleanCheckbox>" and replacing it with "<h:outputText>" whose value is HTML code of checkbox"". U can have a look at the code snippet below....

Cheers,
K.

							<hx:dataIterator value="#{row.subscriptions}" var="dataCol"
								rendered="#{row.rowData}" id="subscriptionsTable1" >
								<h:outputText value="<td>" escape="false"></h:outputText>
								<h:outputText escape="false" value="<input type='checkbox' name='option' checked>" rendered="#{dataCol.emailSubscribed}"/>
								<h:outputText escape="false" value="<input type='checkbox' name='option' >" rendered="#{!dataCol.emailSubscribed}"/>
								<h:outputText value="</td>" escape="false"></h:outputText>
							</hx:dataIterator>

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.