Tenho o seguinte mapeamento
package br.com.indados.madeirada.model.pojos;
import java.io.Serializable;
import java.util.Collection;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;
@Entity
@Table(name="PERIODO",schema="MADEIRADA")
public class Periodo implements Serializable{
@Id
@Column(name="ID")
@SequenceGenerator(name = "SQ_PERIODO",sequenceName = "SQ_PERIODO")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SQ_PERIODO")
private Long id;
@Column(name="DESCRICAO",length=100,nullable=false)
private String descricao;
@Column(name="DT_INICIAL",nullable=false)
@Temporal(TemporalType.DATE)
private Date dataInicial;
@Column(name="DT_FINAL",nullable=false)
@Temporal(TemporalType.DATE)
private Date dataFinal;
@Transient
private Date maxDataFinal;
@Column(name="DT_INI_RESGATE")
@Temporal(TemporalType.DATE)
private Date dataInicialResgate;
@Column(name="DT_FIM_RESGATE")
@Temporal(TemporalType.DATE)
private Date dataFinalResgate;
@Column(name="SITUACAO",length=1)
private Situacao situacao;
@OneToMany(mappedBy="pk.periodo",fetch=FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Resgate> resgates;
@OneToMany(mappedBy="periodo",fetch=FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Importacao> importacoes;
public Periodo() {
}
public Date getDataFinal() {
return dataFinal;
}
public void setDataFinal(Date dataFinal) {
this.dataFinal = dataFinal;
}
public Date getDataFinalResgate() {
return dataFinalResgate;
}
public void setDataFinalResgate(Date dataFinalResgate) {
this.dataFinalResgate = dataFinalResgate;
}
public Date getDataInicial() {
return dataInicial;
}
public void setDataInicial(Date dataInicial) {
this.dataInicial = dataInicial;
}
public Date getDataInicialResgate() {
return dataInicialResgate;
}
public void setDataInicialResgate(Date dataInicialResgate) {
this.dataInicialResgate = dataInicialResgate;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Situacao getSituacao() {
return situacao;
}
public void setSituacao(Situacao situacao) {
this.situacao = situacao;
}
public Date getMaxDataFinal() {
return maxDataFinal;
}
public void setMaxDataFinal(Date maxDataFinal) {
this.maxDataFinal = maxDataFinal;
}
public Collection<Importacao> getImportacoes() {
return importacoes;
}
public void setImportacoes(Collection<Importacao> importacoes) {
this.importacoes = importacoes;
}
public Collection<Resgate> getResgates() {
return resgates;
}
public void setResgates(Collection<Resgate> resgates) {
this.resgates = resgates;
}
}
***************888
package br.com.indados.madeirada.model.pojos;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import br.com.indados.madeirada.model.pojos.pk.ResgatePK;
@Entity
@Table(name="RESGATE",schema="MADEIRADA")
public class Resgate implements Serializable{
@EmbeddedId
private ResgatePK pk;
@Column(name="PONT_UNITARIA",nullable=false)
private Long pontuacaoUnitaria;
@Column(name="PONTUACAO",nullable=false)
private Long pontuacao;
@Column(name="QUANTIDADE",nullable=false)
private Integer quantidade;
@Column(name="DATA",nullable=false)
@Temporal(TemporalType.DATE)
private Date data;
@Transient
private Date dataInicial;
@Transient
private Date dataFinal;
@Column(name="MATR_PARTICPNT",nullable=false,length=10)
private String matriculaParticipante;
//private Participante participante;
/*
private Periodo periodo;
private Premio premio;
*/
public ResgatePK getPk() {
return pk;
}
public void setPk(ResgatePK pk) {
this.pk = pk;
}
public Resgate() {
}
/*
public Participante getParticipante() {
return participante;
}
public void setParticipante(Participante participante) {
this.participante = participante;
}
*/
public Date getData() {
return data;
}
public void setData(Date data) {
this.data = data;
}
public Long getPontuacao() {
return pontuacao;
}
public void setPontuacao(Long pontuacao) {
this.pontuacao = pontuacao;
}
public Long getPontuacaoUnitaria() {
return pontuacaoUnitaria;
}
public void setPontuacaoUnitaria(Long pontuacaoUnitaria) {
this.pontuacaoUnitaria = pontuacaoUnitaria;
}
public Integer getQuantidade() {
return quantidade;
}
public void setQuantidade(Integer quantidade) {
this.quantidade = quantidade;
}
public Date getDataFinal() {
return dataFinal;
}
public void setDataFinal(Date dataFinal) {
this.dataFinal = dataFinal;
}
public Date getDataInicial() {
return dataInicial;
}
public void setDataInicial(Date dataInicial) {
this.dataInicial = dataInicial;
}
public String getMatriculaParticipante() {
return matriculaParticipante;
}
public void setMatriculaParticipante(String matriculaParticipante) {
this.matriculaParticipante = matriculaParticipante;
}
/*
public Premio getPremio() {
return premio;
}
public void setPremio(Premio premio) {
this.premio = premio;
}
public Periodo getPeriodo() {
return periodo;
}
public void setPeriodo(Periodo periodo) {
this.periodo = periodo;
}
*/
}
*********************************************
package br.com.indados.madeirada.model.pojos;
import java.io.Serializable;
import java.util.Collection;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
@Entity
@Table(name="IMPORTACAO",schema="MADEIRADA")
public class Importacao implements Serializable{
@Id
@Column(name="ID")
@SequenceGenerator(name = "SQ_IMPORTACAO",sequenceName = "SQ_IMPORTACAO")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SQ_IMPORTACAO")
private Long id;
@Column(name="DATA",nullable=false)
@Temporal(TemporalType.DATE)
private Date data;
@Column(name="USUARIO",nullable=false,length=20)
private String usuario;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name="ID_PERIODO")
private Periodo periodo;
//private Situacao situacao;
@Column(name="SITUACAO",length=1)
private String situacao;
@OneToMany(mappedBy="importacao",fetch=FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Venda> vendas;
public Importacao() {
}
public Date getData() {
return data;
}
public void setData(Date data) {
this.data = data;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Periodo getPeriodo() {
return periodo;
}
public void setPeriodo(Periodo periodo) {
this.periodo = periodo;
}
public String getUsuario() {
return usuario;
}
public void setUsuario(String usuario) {
this.usuario = usuario;
}
public String getSituacao() {
return situacao;
}
public void setSituacao(String situacao) {
this.situacao = situacao;
}
/*
public Situacao getSituacao() {
return situacao;
}
public void setSituacao(Situacao situacao) {
this.situacao = situacao;
}
*/
public Collection<Venda> getVendas() {
return vendas;
}
public void setVendas(Collection<Venda> vendas) {
this.vendas = vendas;
}
}
E quando executo um save ou load ou get no meu HibernateUtil ele lança a seguinte exceção:
org.hibernate.type.SerializationException: could not deserialize
at org.hibernate.util.SerializationHelper.deserialize(SerializationHelper.java:217)
at org.hibernate.util.SerializationHelper.deserialize(SerializationHelper.java:240)
at org.hibernate.type.SerializableType.fromBytes(SerializableType.java:82)
at org.hibernate.type.SerializableType.get(SerializableType.java:39)
at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:163)
at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:154)
at org.hibernate.type.AbstractType.hydrate(AbstractType.java:81)
at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2096)
at org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1380)
at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1308)
at org.hibernate.loader.Loader.getRow(Loader.java:1206)
at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:580)
at org.hibernate.loader.Loader.doQuery(Loader.java:701)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.loadEntity(Loader.java:1860)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3044)
at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:395)
at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:375)
at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:139)
at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:195)
at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:103)
at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
at br.com.indados.madeirada.util.HibernateUtil.main(HibernateUtil.java:37)
Caused by: java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2232)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2698)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:750)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:268)
at org.hibernate.util.SerializationHelper$CustomObjectInputStream.<init>(SerializationHelper.java:252)
at org.hibernate.util.SerializationHelper.deserialize(SerializationHelper.java:209)
... 26 more
Alguem saberia dizer qual o problema??
Porque ja atualizei as libs, coloquei a versão mais nova da lib cp(algum nome) e continua dando o mesmo erro.