【问题标题】:org.hibernate.type.SerializationException: could not deserialize in Hibernate codeorg.hibernate.type.SerializationException:无法在 Hibernate 代码中反序列化
【发布时间】:2021-01-05 16:08:05
【问题描述】:

我在这里的第二行得到了错误。

qlString = "select r FROM Hotspot r "
              + " left outer join fetch r.G1 g1 "
                 + " left outer join fetch r.G2 g2 "
                 + " left outer join fetch r.G3 g3 "
                 + " left outer join fetch r.G4 g4 "
                 + " left outer join fetch r.G5 g5 "
                 +" join r.A a "
                  +" left outer join fetch r.FR rm "
            + "where a.id= :aId";           
query = session.createQuery(qlString);
query.setParameter("aId",lid);
hpts =(List<Hotspot>)query.list();

这是我的 Hibernate Entity 类。

@Entity
@Table(name="HOTSPOT")
@NamedQuery(name="Hotspot.findAll", query="SELECT f FROM Hotspot f")
public class Hotspot implements Serializable {
private static final long serialVersionUID = 1L;

@Id
@SequenceGenerator(name="HOTSPOT_ID_GENERATOR", sequenceName="HOTSPOT_SEQ")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="HOTSPOT_ID_GENERATOR")
private long id;

这是部分堆栈跟踪

org.hibernate.type.SerializationException: could not deserialize
    at org.hibernate.internal.util.SerializationHelper.doDeserialize(SerializationHelper.java:243)
    at org.hibernate.internal.util.SerializationHelper.deserialize(SerializationHelper.java:287)
    at org.hibernate.type.descriptor.java.SerializableTypeDescriptor.fromBytes(SerializableTypeDescriptor.java:138)
    at org.hibernate.type.descriptor.java.SerializableTypeDescriptor.wrap(SerializableTypeDescriptor.java:113)
    at org.hibernate.type.descriptor.java.SerializableTypeDescriptor.wrap(SerializableTypeDescriptor.java:27)
    at org.hibernate.type.descriptor.sql.VarbinaryTypeDescriptor$2.doExtract(VarbinaryTypeDescriptor.java:53)

休眠版本

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.0.1.Final</version>
    </dependency>

编辑:用 Hibernate 版本和查询更新了问题。

【问题讨论】:

  • 请显示您运行什么查询?你用的是什么休眠版本?
  • 更新了帖子的详细信息。

标签: java hibernate serialization


【解决方案1】:

您没有显示整个映射,但看起来您正在为 Hibernate 尝试通过 Java 反序列化机制反序列化的属性使用不受支持的 Java 类类型,但它失败了,因为数据显然不是有效的 Java 序列化流.

我猜你忘了把@Entity@Embeddable 放在某个类上,或者某些类没有被扫描,或者你忘记在persistence.xml 中注册它。

【讨论】:

    猜你喜欢
    • 2012-10-05
    • 1970-01-01
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 2017-03-27
    • 1970-01-01
    • 2017-08-04
    • 1970-01-01
    相关资源
    最近更新 更多