eu tenho um código assim no método doExecute() das minhas Actions:
if (!this.isSimulationAvailable()) {
return LOGIN;
}
this.openHibernateSession();
if (this.getHasErrorMessages()) {
return ERROR;
}
try {
model = loadEmployee();
return SUCCESS;
}
catch (HibernateException e) {
this.log.error("[" + this.getActionName() + "]:doDefault() failed", e);
this.addErrorMessage(e.getMessage());
return ERROR;
}
finally {
this.closeHibernateSession();
}
Eu quero refatorar isso pra colocar num lugar só a parte que mexe com o hibernate, mas eu não posso/devo/quero usar AOP.
Também está muito tarde pra passar tudo pro WW2.
Todas as minhas actions já extendem HibernateAction, que tem os métodos de abrir e fechar a session.
O problema de reescrever o método execute() é que eu não quero abrir a session antes de chamar o doValidation(), pq é meio sem nexo, e eu não tô a fim de copiar o execute() da ActionSupport pra dentro da minha action.
Alguém tem alguma idéia??
[]s!