Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Entity
- @RevisionEntity(RevInfoListener.class)
- public class Revinfo extends DefaultRevisionEntity{
- /**
- *
- */
- private static final long serialVersionUID = -4464220985145031968L;
- @Column(name="USER_NAME")
- private String username;
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- @ManyToOne(optional=false)
- @JoinColumn(name="userID",referencedColumnName="ID")
- private User auditor;
- }
- package com.minhap.listener;
- import org.hibernate.envers.RevisionListener;
- import org.springframework.beans.factory.annotation.Autowired;
- import com.minhap.Util.AutowireHelper;
- import com.minhap.model.Revinfo;
- import com.minhap.security.SecurityService;
- public class RevInfoListener implements RevisionListener {
- @Autowired
- private SecurityService securityService;
- @Override
- public void newRevision(Object revisionEntity) {
- Revinfo entity = (Revinfo)revisionEntity;
- AutowireHelper.autowire(this);
- entity.setUsername(securityService.getLogged().getName());
- }
- public SecurityService getSecurityService() {
- return securityService;
- }
- public void setSecurityService(SecurityService securityService) {
- this.securityService = securityService;
- }
- }
- package com.minhap.model;
- import java.io.Serializable;
- import java.sql.Timestamp;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import javax.inject.Named;
- import javax.persistence.*;
- import org.hibernate.envers.Audited;
- @Entity
- @Named
- @Table(name = "USERS")
- @Audited
- public class User implements Serializable{
- private static final long serialVersionUID = 4092545745731449659L;
- @Id
- @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "USER_SEQ")
- @SequenceGenerator(sequenceName = "USER_SEQ", allocationSize = 1, name = "USER_SEQ")
- private Long id;
- private Timestamp fx_High;
- private Timestamp fx_Modification;
- public String certificate;
- private String nif;
- private String name;
- private String password;
- private String firstname;
- private String lastname;
- private String email;
- private Long phone;
- private Long state;
- public User() {
- super();
- }
- @Transient
- private List<Privilege> privileges;
- @OneToMany(mappedBy="user" )
- private List<Solicitude> solicitude;
- @OneToMany(mappedBy="user_res" )
- private List<Solicitude> solicitude_res;
- @ManyToMany()
- @JoinTable(
- name = "user_role",
- joinColumns = @JoinColumn(
- name = "users_id", referencedColumnName = "id"),
- inverseJoinColumns = @JoinColumn(
- name = "role_id", referencedColumnName = "id"))
- private List<Role> roles = new ArrayList<>();
- @ManyToMany()
- @JoinTable(
- name = "manager",
- joinColumns = @JoinColumn(
- name = "users_id", referencedColumnName = "id"),
- inverseJoinColumns = @JoinColumn(
- name = "sp_id", referencedColumnName = "id"))
- private List<Sp> sp_manager = new ArrayList<>();
- @ManyToMany()
- @JoinTable(
- name = "contact",
- joinColumns = @JoinColumn(
- name = "users_id", referencedColumnName = "id"),
- inverseJoinColumns = @JoinColumn(
- name = "sp_id", referencedColumnName = "id"))
- private List<Sp> sp_contact = new ArrayList<>();
- @ManyToMany()
- @JoinTable(
- name = "rmanager",
- joinColumns = @JoinColumn(
- name = "users_id", referencedColumnName = "id"),
- inverseJoinColumns = @JoinColumn(
- name = "spr_id", referencedColumnName = "id"))
- private List<SpR> spr_manager = new ArrayList<>();
- @ManyToMany()
- @JoinTable(
- name = "rcontact",
- joinColumns = @JoinColumn(
- name = "users_id", referencedColumnName = "id"),
- inverseJoinColumns = @JoinColumn(
- name = "spr_id", referencedColumnName = "id"))
- private List<SpR> spr_contact = new ArrayList<>();
- @PostLoad
- private void loadPrivileges() {
- privileges = new ArrayList<>();
- Map<Long, Privilege> mapPrivileges = new HashMap<>();
- for (Role rol : roles) {
- for (Privilege privilege : rol.getPrivileges()) {
- if (!mapPrivileges.containsKey(privilege.getId())) {
- mapPrivileges.put(privilege.getId(), privilege);
- }
- }
- }
- privileges = new ArrayList<>(mapPrivileges.values());
- }
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = (prime * result) + ((email == null) ? 0 : email.hashCode());
- return result;
- }
- @Override
- public boolean equals(final Object obj) {
- if (this == obj) {
- return true;
- }
- if (obj == null) {
- return false;
- }
- if (getClass() != obj.getClass()) {
- return false;
- }
- final User user = (User) obj;
- if (!name.equals(user.name)) {
- return false;
- }
- return true;
- }
- @Override
- public String toString() {
- final StringBuilder builder = new StringBuilder();
- builder.append("Users [id=").append(id).append(", name=").append(name)
- .append(", roles=").append(roles).append("]");
- return builder.toString();
- }
- public Long getId() {
- return id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public Timestamp getFx_High() {
- return fx_High;
- }
- public void setFx_High(Timestamp fx_High) {
- this.fx_High = fx_High;
- }
- public Timestamp getFx_Modification() {
- return fx_Modification;
- }
- public void setFx_Modification(Timestamp fx_Modification) {
- this.fx_Modification = fx_Modification;
- }
- public String getCertificate() {
- return certificate;
- }
- public void setCertificate(String certificate) {
- this.certificate = certificate;
- }
- public String getNif() {
- return nif;
- }
- public void setNif(String nif) {
- this.nif = nif;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- public String getFirstname() {
- return firstname;
- }
- public void setFirstname(String firstname) {
- this.firstname = firstname;
- }
- public String getLastname() {
- return lastname;
- }
- public void setLastname(String lastname) {
- this.lastname = lastname;
- }
- public String getEmail() {
- return email;
- }
- public void setEmail(String email) {
- this.email = email;
- }
- public Long getState() {
- return state;
- }
- public void setState(Long state) {
- this.state = state;
- }
- public List<Privilege> getPrivileges() {
- return privileges;
- }
- public void setPrivileges(List<Privilege> privileges) {
- this.privileges = privileges;
- }
- public List<Role> getRoles() {
- return roles;
- }
- public void setRoles(List<Role> roles) {
- this.roles = roles;
- }
- public Long getPhone() {
- return phone;
- }
- public void setPhone(Long phone) {
- this.phone = phone;
- }
- public List<Sp> getSp_manager() {
- return sp_manager;
- }
- public void setSp_manager(List<Sp> sp_manager) {
- this.sp_manager = sp_manager;
- }
- public List<Sp> getSp_contact() {
- return sp_contact;
- }
- public void setSp_contact(List<Sp> sp_contact) {
- this.sp_contact = sp_contact;
- }
- public List<SpR> getSpr_manager() {
- return spr_manager;
- }
- public void setSpr_manager(List<SpR> spr_manager) {
- this.spr_manager = spr_manager;
- }
- public List<SpR> getSpr_contact() {
- return spr_contact;
- }
- public void setSpr_contact(List<SpR> spr_contact) {
- this.spr_contact = spr_contact;
- }
- public List<Solicitude> getSolicitude() {
- return solicitude;
- }
- public void setSolicitude(List<Solicitude> solicitude) {
- this.solicitude = solicitude;
- }
- public List<Solicitude> getSolicitude_res() {
- return solicitude_res;
- }
- public void setSolicitude_res(List<Solicitude> solicitude_res) {
- this.solicitude_res = solicitude_res;
- }
- }
- Caused by: javax.transaction.RollbackException: ARJUNA016053: Could not commit transaction.
- at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1212)
- at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
- at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
- at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:178)
- at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1023)
- ... 144 more
- Caused by: org.hibernate.exception.SQLGrammarException: could not execute statement
- at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:63)
- at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
- at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109)
- at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:95)
- at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:207)
- at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:45)
- at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2949)
- at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3449)
- at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:89)
- at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:582)
- at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:456)
- at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:337)
- at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
- at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1282)
- at org.hibernate.envers.internal.synchronization.AuditProcess.doBeforeTransactionCompletion(AuditProcess.java:156)
- at org.hibernate.envers.internal.synchronization.AuditProcessManager$1.doBeforeTransactionCompletion(AuditProcessManager.java:46)
- at org.hibernate.engine.spi.ActionQueue$BeforeTransactionCompletionProcessQueue.beforeTransactionCompletion(ActionQueue.java:928)
- at org.hibernate.engine.spi.ActionQueue.beforeTransactionCompletion(ActionQueue.java:503)
- at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2340)
- at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:485)
- at org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorImpl.beforeCompletion(JtaTransactionCoordinatorImpl.java:316)
- at org.hibernate.resource.transaction.backend.jta.internal.synchronization.SynchronizationCallbackCoordinatorNonTrackingImpl.beforeCompletion(SynchronizationCallbackCoordinatorNonTrackingImpl.java:47)
- at org.hibernate.resource.transaction.backend.jta.internal.synchronization.RegisteredSynchronization.beforeCompletion(RegisteredSynchronization.java:37)
- at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
- at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:371)
- at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
- at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
- at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1200)
- ... 148 more
- Caused by: java.sql.SQLSyntaxErrorException: ORA-00904: "ID": invalid identifier
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
- at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1017)
- at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:655)
- at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:249)
Add Comment
Please, Sign In to add comment