Ajuda: Capturar valores de elementos criados dinamicamente (java + primefaces + elementos jsf)

3 respostas
ziplove

Olá Pessoal

Sou novo na área de desenvolvimento web java e estou criando um projeto com Maven + Jsf + primefaces + jpa + hibernate.
Meu problema é o seguinte:

Tenho um <p:wizard na Tela 01 e dentro dele um <p:dataTable que traz todas as tarefas contidas no RUP. Ao selecionar as tarefas crio dinamicamente em um <p:dataGrid (Tela 02) todos artefatos que podem estar ligados as tarefas.

Tela 01

Tela 02

Na Tela 02, no meu Bean, mais precisamente no método save, quero a partir de um botão capturar todos os valores dos meus <p:selectCheckboxMenu criados dinamicamente. Existe alguma classe que faz isso? Que a partir do Bean captura qualquer elemento do form e seus valores?^

Desde já sou grato. :smiley:

3 Respostas

drsmachado

Por que você precisa de um título escrito APENAS EM LETRAS MAIÚSCULAS?

ziplove

Desculpe. Acho que é costume. Não quiz ofender. Já mudei antes de ver seu post.

ziplove

Desculpe. Acho que é costume. Não quiz ofender. Já mudei antes de ver seu post.

Pessoal, abaixo segue o código dos elementos criados dinamicamente.

<p:tab id="activityArtifacts" title="Artifacts"> <p:panel id="pnArtifacts" header="Artifacts"> <p:dataGrid var="tasks" value="#{activityController.selectedTasks}" columns="2" rows="12" paginator="true" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" rowsPerPageTemplate="9,12,15"> <fieldset> <legend><b>#{tasks.name}</b></legend> <div class="control-group"> <h:outputLabel for="artefactsList artefactsList02" value="Select one or more artifacts:" styleClass="control-label" /> <div class="controls"> <p:selectCheckboxMenu label="Select artifacts of input" id="artefactsList" value="#{activityController.selectedArtefactsInput[tasks.id]}" filter="true" filterMatchMode="startsWith" converter="#{artefactConverter}"> <f:selectItems value="#{artefactController.subjects}" /> </p:selectCheckboxMenu> <p:selectCheckboxMenu label="Select a artifacts of output" id="artefactsList02" value="#{activityController.selectedArtefactsOutput[tasks.id]}" filter="true" filterMatchMode="startsWith" converter="#{artefactConverter}"> <f:selectItems value="#{artefactController.subjects}" /> </p:selectCheckboxMenu> </div> </div> </fieldset> </p:dataGrid> </p:panel> <p:commandButton update="growl" value="Capturar valores" action="#{activityController.getValues}" immediate="true" id="getValues" styleClass="btn" /> </p:tab>

Este código, a partir das tarefas selecionadas vai carregar os artefatos na Tela 02. O problema é que são N <p:selectCheckboxMenu. Como faço para pegar os valores de todos criados dinamicamente? Tentei via FacesContext mas não consegui. Existe no value como criar uma lista da lista?

Criado 26 de agosto de 2013
Ultima resposta 29 de ago. de 2013
Respostas 3
Participantes 2