Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 带休眠的堆栈溢出错误_Hibernate_Jpa_Stack Overflow - Fatal编程技术网

Hibernate 带休眠的堆栈溢出错误

Hibernate 带休眠的堆栈溢出错误,hibernate,jpa,stack-overflow,Hibernate,Jpa,Stack Overflow,当我尝试与EntityManager合并时,我得到一个堆栈溢出错误。很抱歉,我只发布了stacktrace和我试图持久化的实体,但我对此不是很有经验,请评论一下您可能需要查看的代码 在此链接中,您将发现异常(对于帖子来说太长):。重复部分如下: ... at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3887) at org.hibernate.event.in

当我尝试与
EntityManager
合并时,我得到一个
堆栈溢出错误。很抱歉,我只发布了stacktrace和我试图持久化的实体,但我对此不是很有经验,请评论一下您可能需要查看的代码

在此链接中,您将发现异常(对于帖子来说太长):。重复部分如下:

...
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3887)
at org.hibernate.event.internal.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:458)
at org.hibernate.event.internal.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:427)
at org.hibernate.event.internal.DefaultLoadEventListener.load(DefaultLoadEventListener.java:204)
at org.hibernate.event.internal.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:260)
at org.hibernate.event.internal.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:148)
at org.hibernate.internal.SessionImpl.fireLoad(SessionImpl.java:1078)
at org.hibernate.internal.SessionImpl.internalLoad(SessionImpl.java:1005)
at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:651)
at org.hibernate.type.EntityType.resolve(EntityType.java:471)
at org.hibernate.type.ComponentType.resolve(ComponentType.java:666)
at org.hibernate.loader.Loader.extractKeysFromResultSet(Loader.java:828)
at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:707)
at org.hibernate.loader.Loader.processResultSet(Loader.java:940)
at org.hibernate.loader.Loader.doQuery(Loader.java:910)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:341)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:311)
at org.hibernate.loader.Loader.loadEntity(Loader.java:2111)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:82)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:72)
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3887)
...
以下是实体:

@Entity
@Table(name = "transaccional.auditoria")
public class Auditoria {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO, generator="transaccional.auditoria_id_seq")
    @SequenceGenerator(name="transaccional.auditoria_id_seq", sequenceName="transaccional.auditoria_id_seq")
    @Column(name = "id")
    private Integer id;

    @OneToOne
    @JoinColumn(name="atencion_id",referencedColumnName="id")
    private Atencion atencion;

    @OneToOne
    @JoinColumn(name="prescripcion_id",referencedColumnName="id")
    private Prescripcion prescripcion;

    @OneToOne
    @JoinColumn(name="prestador_id",referencedColumnName="id")
    private Prestador prestador;

    @OneToOne
    @JoinColumn(name="tipo_transaccion_id",referencedColumnName="id")
    private TipoTransaccion tipoTransaccion;

    @OneToOne
    @JoinColumn(name="nomenclador_practica_id",referencedColumnName="id")
    private PracticaNomenclada nomencladorPractica;


    @OneToOne
    @JoinColumn(name="auditor_actual_id",referencedColumnName="id")
    private Auditor auditorActual;

    @Column(name = "auditor_revision")
    private String auditorRevision;

    @OneToOne
    @JoinColumn(name="estado_auditoria_id",referencedColumnName="id")
    private EstadoAuditoria estadoAuditoria;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "fecha_final")
    private Date fechaFinal;

    @Column(name = "cantidad_items")
    private Integer cantidadItems;

    @Column(name = "en_revision")
    private Boolean enRevision;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "fecha_comienzo_revision")
    private Date fechaComienzoRevision;

    @OneToOne(cascade=CascadeType.ALL)
    @JoinColumn(name="ultimo_auditoria_detalle_id",referencedColumnName="id")
    private AuditoriaDetalle ultimoAuditoriaDetalle;  

    @Column(name = "es_anulado")
    private Boolean esAnulado;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="fecha_insert")
    private Date fechaInsert;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="fecha_delete")
    private Date fechaDelete;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="fecha_update")
    private Date fechaUpdate;

    @Column(name="version")
    private int version;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="fecha_auditoria")
    private Date fechaAuditoria;

    @OneToOne(cascade=CascadeType.ALL)
    @JoinColumn(name="motivo_auditoria_id",referencedColumnName="id")
    private MotivoAuditoria motivoAuditoria;  

    @Column
    private String autorizacion;
    @Column
    private String origen;

    @Column(name="nro_autorizacion")
    private String nroAutorizacion;
以下是发生这种情况的服务:

@Transactional
@Override
public void update(Auditoria auditoria) {
    entityManager.merge(auditoria);
}

如果您提供引起此错误的代码部分,那就太好了。您是否已重写实体的equals方法,如果是,此方法是什么样子的?@luigimendoza我已更新代码。@JamesB我尚未重写equals方法。该链接已断开。