Interar uma list string em um datatable em jfs

0 respostas
jstljsfjava
oitathi

Eu tenho um List e gostaria de passar o conteúdo para o header das colunas de um datatable e apenas inserir uma linha embaixo de cada coluna.
Estou fazendo em jsf e o laço fiz com jstl. O problema é que está sendo inseridas a quantidade de linhas referente ao numero de elementos da lista. Ou seja, se minha lista tem 3 elementos, três linhas são inseridas no datatable além do header. Não sei o motivo, apresar de aparentar ser algo bem simples.
Então, minha dúvida é como eu simplesmente percorro a minha lista para inserir seu conteúdo como cabeçalho da tabela (que necessariamente deve ser editável) e inserir para cada coluna apenas uma célula editável em branco?

segue o xhtml:

<p:dataTable var="dataRow" value="#{criaConsultaBean.colunas}"
					editable="true" editMode="cell" id="rowsTable">
					<p:ajax event="cellEdit" listener="#{criaConsultaBean.onCellEdit}" />

					<c:forEach items="#{criaConsultaBean.colunas}" var="column"
						varStatus="loop">

						<p:column headerText="#{column}">
							<p:cellEditor>
								<f:facet name="output">
									<h:outputText value="#{column}" />
								</f:facet>
								<f:facet name="input">
									<p:inputText value="#{column}" />
								</f:facet>
							</p:cellEditor>
						</p:column>
						<p:row>
						
						</p:row>
					</c:forEach>
				</p:dataTable>

E o meu bean:
@ManagedBean
@SessionScoped
public class CriaConsultaBean {

private List<String> colunas = Arrays.asList("sup1", "sup2", "sup3");

//getter and setters

Criado 6 de junho de 2017
Respostas 0
Participantes 1