PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Criar componentes HTML dinamicamente #535929

29/10/2015

0

Bom dia a todos.

Criei uma pagina para uma aplicação de questionário com componentes criados dinamicmente de acordo com o questionario criado, tenho entre outros componentes um InputText e um commandButton, consigo pegar os valores do meu Bean, no entanto qdo faço uma alteração em qualquer um destes valores, não consigo resgatar este novo valor pata alteração da classe. segue parte do codigo:

o inputText:
inputTextDescricao = (HtmlInputText) FacesContext.getCurrentInstance().getApplication().createComponent(HtmlInputText.COMPONENT_TYPE);
inputTextDescricao.setId("lblQuestaoDescricao");
ValueExpression ve = expressionFactory.createValueExpression(elContext, "#{alteraQuestaoQuestionarioDinamicoManagedBean.qstDescricao}", String.class);
inputTextDescricao.setValueExpression("value" , ve);
inputTextDescricao.setValue(questao.getDescricao());
panelGrid.getChildren().add(inputTextDescricao);

O commandButton:
botaoAltera = (HtmlCommandButton) application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
botaoAltera.setValue("Alterar");
botaoAltera.setId("botaoAlteraOpc_" + questao.getId());
botaoAltera.setRendered(true);
id = Long.toString(questao.getId());
MethodExpression me = expressionFactory.createMethodExpression(elContext, "#{manutencaoQuestionarioManagedBean.alteraQuestao('" + questao.getId() + "','" + inputTextDescricao.getValue() + "','" + questao.getTipoQuestao() + "')}", Void.TYPE, new Class<?>[0]);
botaoAltera.setActionExpression(me);
panelGrid.getChildren().add(botaoAltera);



Parte do bean:

public String alteraQuestao(String idQuestao, String descricaoQuestao, String tipoQuestao){

System.out.println("PARAMETROS RECEBIDOS: \n " + idQuestao + "\n" + descricaoQuestao + "\n" + tipoQuestao);
Questao q = new Questao();
q = questaoFacade.findyById(Long.valueOf(idQuestao));
q.setDescricao(descricaoQuestao);
q.setTipoQuestao(tipoQuestao);

System.out.println("vou alterar a questao: " + q.getDescricao() + " >>>>>>>>>>>>>>>>>>>>");
questaoFacade.edit(q);
return "visualizaquestionariodinamico.xhtml";
}

Ja perdi um tempo considerável atras desta resposta sem sucesso, qualquer ajuda será grata.
Saudações
Antonio Damas

Antonio Damas

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar