Oi, Pessoal.
Estou usando JSF e Hibernate. Tenho uma página onde o action é o seguinte:
<h:commandButton value="Enviar" action="#{FamiliaDAO.inserir}" ></h:commandButton>
O método inserir da classe FamiliaDAO está abaixo:
public String inserir(){
try{
context = FacesContext.getCurrentInstance().getExternalContext();
request = (HttpServletRequest)context.getRequest();
httpSession = request.getSession();
String endereco = request.getParameter("formFamilia:endereco");
String contato = request.getParameter("formFamilia:contato");
Estudante estudante = (Estudante)httpSession.getAttribute("estudante");
String nome = estudante.getNome();
Familia familia = new Familia();
familia.setEndereco(endereco);
familia.setContato(contato);
familia.setEstudante(estudante);
Transaction transaction = sessao.beginTransaction();
sessao.save(familia);
transaction.commit();
} catch(Exception e){
System.out.print(e.getMessage());
addMessage("Erro ao inserir família.");
return "familia_concluida";
}
return "familia_concluida";
}
Não estou entendendo porque está dando o erro Exceeded maximum depth for nested request dispatches. Não há nenhum include no jsp e, enquanto eu estava rastreando o código, vi que após o retorno de “familia_concluida” (que ia levar para a página home.jsp) o método inserir da classe FamiliaDAO é chamado novamente. Ou seja, ele está chamando ele mesmo, mas não consegui encontrar onde isso ocorre.
Agradeço pela ajuda de antemão
Caroline