Boa tarde galera
Estou usando o envers para fazer a auditoria do sistema da empresa.
Hoje tenho a seguinte estrutura
@Audited
@Entity
@Table(name = "CLIENTE")
public class Cliente implements Serializable {
//propriedades
}
Um RevisionListener para add o usuário
[code]public class AuditoriaListener implements RevisionListener{
@Override
public void newRevision(Object revisionEntity){
RevisionEntityWeb entity = (RevisionEntityWeb) revisionEntity;
Usuario usuario = (Usuario) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
entity.setUsuario(usuario.getCodigo().toString());
}
}[/code]
E uma entidade de revisao
[code]@Entity
@Table(name = “REVISION_ENTITY”)
@RevisionEntity(AuditoriaListener.class)
public class RevisionEntityWeb extends DefaultRevisionEntity {
private static final long serialVersionUID = 1L;
private String usuario;
public String getUsuario() {
return usuario;
}
public void setUsuario(String usuario) {
this.usuario = usuario;
}
}[/code]
Eu Gostaria que no lugar de gravar o usuário numa segunda tabela (REVISION_ENTITY)…
guardasse as informações na mesma tabela auditada no caso CLIENTE_AUD e não na REVISION_ENTITY
Pois a REVISION_ENTITY vai crescer muito pois muitas tabelas de grande porte são auditadas
Outra coisa tambem é mudar para ficar num banco a parte… e não no mesmo bando da app