ychv
Fevereiro 27, 2013, 5:22pm
#1
Boa tarde!!
estou com um problema em jsf e richfaces, bom, eu estou com uma aplicação onde tem dois botoes, voltar e avançar, alguem poderia me mostrar um exemplo onde eu possa usar o botao voltar e mostrar as informaçoes que estao persistidas no banco??? e o avançar sem que ele duplique a informação no banco???
agradeço
Dependendo do escopo do bean, ao salvar você também deve limpar a propriedade referente ao objeto persistido.
Isso é apenas uma suspeita… poste o seu código.
ychv
Março 4, 2013, 1:31pm
#3
o campo Outro quando uso o bota voltar nao traz o dado do banco.
apesar de que ao usar o botao avançar, o dados sao persistido no banco
<rich:dataGrid rendered="true" value="#{lInstituicao.listAltervativas2_P78}" var="alter2" columns="2" width="100%" >
<f:facet name="header">
<rich:columnGroup style="font-size:9px;font-family:Verdana,Helvetica;horizontal-align:left; ">
<rich:column colspan="2">
<h:outputText styleClass="labelHeader" value="#{lInstituicao.questaoAtual2.numQuestao} - #{lInstituicao.questaoAtual2.enunciado}"> </h:outputText>
</rich:column>
</rich:columnGroup>
</f:facet>
<h:panelGrid columns="2">
<h:selectBooleanCheckbox value="#{alter2.selecionado}" />
<h:panelGrid>
<h:outputText styleClass="banner_titulo_2" value="#{alter2.opcao}"></h:outputText>
<h:inputText size="40" maxlength="200" value="#{lInstituicao.alternativaOutra2}" rendered="#{alter2.campoOutro}" />
</h:panelGrid>
</h:panelGrid>
</rich:dataGrid>
codigo botao avançar
public void gravarQuest_v2(ActionEvent event) throws IOException{
FacesContext context = FacesContext.getCurrentInstance();
response = (HttpServletResponse) context.getExternalContext().getResponse();
String s = event.getComponent().getId();
LRespostasController cr = new LRespostasController();
EntityManager em = getEntityManager();
try {
em.getTransaction().begin();
for (int i = 0; i < this.questaoList.size(); i++)
{
LRespostas r = new LRespostas();
LQuestao o = (LQuestao) this.questaoList.get(i);
if (o.getNumResp()!= 0){
//System.out.println("RESPOSTA cod_questao i: "+o.getCdQuestao()+" - "+ o.getRespUser().getOpcao() );
r.setCdQuestao(o);
r.setCdQuestionario(this.lQuestionario);
r.setCdAlternativa(o.getRespUser());
r.setOutro(o.getRespUserTXT());
//o.getLRespostas().ge
cr.create2(r,o.getLRespostas().getCdRespostas());
}
else{
// System.out.println("RESPOSTA cod_questao u: "+o.getCdQuestao()+" - "+ o.getRespUserTXT());
r.setCdQuestao(o);
r.setCdQuestionario(this.lQuestionario);
r.setCdAlternativa(null);
r.setOutro(o.getRespUserTXT());
cr.create2(r,o.getLRespostas().getCdRespostas());
}
}
em.getTransaction().commit();
this.salvaVariasAlternativas_v2();
this.salvaVariasAlternativas_v2_2();
} catch (Exception ex) {
try {
addErrorMessage(ex.getLocalizedMessage());
em.getTransaction().rollback();
} catch (Exception e) {
addErrorMessage(e.getLocalizedMessage());
}
} finally {
em.close();
}
this.proximoMultiplo(s);
this.proxPag = s+".jsp";
this.ListAlternativa.clear();
this.ListAlternativa2.clear();
response.sendRedirect(this.session.getAttribute("servPath")+ "index3.jsf?path=lInstituicao/Entreposto/"+this.proxPag);
}