jsf 2.0 + hibernate illegally attempted to associate a proxy with two open Sessions

132 views
Skip to first unread message

Thiago Marques

unread,
Dec 10, 2010, 4:23:46 PM12/10/10
to javasf: JavaServer Faces Group
estou tendo muitos problemas com isso, eu não intendo, o que acontece
para levar a esse erro, eu não vejo onde estou criando duas sessões..
alguem pode em ajudar..
estou tentando deletar um arquivo que listei em um datatable.
no meu bean metodo excluir:
public void excluir() {
try {

TransportadorDao dao = new TransportadorDaoImpl();
dao.delete(transportador);
transportador = null;
transportadores = null;
} catch (ConstraintViolationException cve) {
JSFUtil.getInstance().mensagemErro("Erro ao excluir este
registro. Este registro possui relações.");
} catch (Exception x) {
x.printStackTrace();
JSFUtil.getInstance().mensagemErro("ERRO, por favor
contate o administrador do sistema." + x.getMessage());
}
}

...
no meu hibernateImpl:
@Override
public void delete(T objeto) {
try {
HibernateUtility.beginTransaction();
HibernateUtility.getSession().delete(objeto); // aqui dá
o erro quando debugo..
HibernateUtility.commitTransaction();
HibernateUtility.closeSession();
} catch (HibernateException hibernateException) {
cancel();
throw hibernateException;
}
}

Thiago Marques

unread,
Dec 13, 2010, 6:55:45 AM12/13/10
to javasf: JavaServer Faces Group
Pessoal consegui resolver dessa forma:


Depois da minha criteria coloquei:
HibernateUtility.closseSession();
HibernateUtility.commitTransaction();

passei a testa e deu tdo certo, agora com mais testes encontrei erro
ao tentar editar:

javax.faces.el.EvaluationException:
org.hibernate.LazyInitializationException: could not initialize proxy
- no Session
at
javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:
102)
at
com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:
102)
at javax.faces.component.UICommand.broadcast(UICommand.java:315)
at javax.faces.component.UIData.broadcast(UIData.java:912)
at
org.primefaces.component.datatable.DataTable.broadcast(DataTable.java:
574)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:
775)
at
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:
1267)
at
com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:
82)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:
118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:
1523)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
343)
...
...
Reply all
Reply to author
Forward
0 new messages