Olá pessoal,
Estou utilizando o Hibernate, fiz uma association N:N, portanto tenho uma tabela ternaria onde tenho uma chave primaria composta pelo idClube e idCampeonato (As duas formam uma chave composta), mas até ai OK. O problema estão nas exception quando tenho uma chave e tento atualizar por uma que já exista, esta retornando a stack trace e na verdade queria lançar uma exception mais simples para o usuário. Estou utilizando os códigos abaixo. Alguem, por favor, poderia me ajudar?
Método Atualiza do DAO
public void atualiza(T u) throws Exception{
try {
this.session.update(u);
} catch (Exception e) {
throw new Exception("Problemas na atualização", e);
}
}
Trecho da Action
try {
daofactory.beginTransaction();
daofactory.getCampeonatoDao().atualiza(campeonato);
} catch (Exception e) {
daofactory.rollback();
daofactory.close();
return ERROR;
}
daofactory.commit();
daofactory.close();
return SUCCESS;
Esta é a Exception
javax.servlet.ServletException: Exception while invoking action selecionaClube: null / java.lang.reflect.InvocationTargetException / Duplicate entry '1-2' for key 'PRIMARY' / java.sql.BatchUpdateException
org.mentawai.core.Controller.service(Controller.java:661)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
Grato,
Wallfox