[RESOLVIDO]Erro ao tentar gravar dados no banco

3 respostas
L
estou tentando gravar dados no banco assim:
public Sequencial insertSequencial(long sequencial) throws ExcecaoAplicacao{
	
		Sequencial seq = new Sequencial();
		
		try{ 
			
			long idSequencial = DBHelper.getSequenceValue(entityManager, "seq_sequencial");
			seq.setIdSequencial(idSequencial);
			seq.setSequencial(sequencial + 1); 
		
		}catch (Exception e) {
			logger.error("Problemas inserindo sequencial", e);
			e.printStackTrace();
		}
		
		entityManager.persist(seq);
		return seq;
		
	}
porem da esse erro:
javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.PersistentObjectException: detached entity passed to persist: com.evermobile.batch.Sequencial
@Entity
@Table(name="sequencial")
public class Sequencial
{
	@Id
	@Column(name="id_sequencial")
	@SequenceGenerator(name="SequencialGenerator", sequenceName="seq_sequencial")
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SequencialGenerator")
	private long idSequencial;
	
	@Column(name="sequencial")
	private long sequencial;
	
	public long getIdSequencial()
	{
		return idSequencial;
	}

	public void setIdSequencial(long idSequencial)
	{
		this.idSequencial = idSequencial;
	}

	public long getSequencial()
	{
		return sequencial;
	}

	public void setSequencial(long sequencial)
	{
		this.sequencial = sequencial;
	}
	
}
alguem sabe como resolver...?

3 Respostas

Danilo_Carvalho

Bom dia!

detached entity passed to persist

O objeto que você esta tentando persistir esta “detachado”

Para resolver este problema um refresh pode te ajudar, mas de uma olhada nos estados do objetos do hibernate!

Até mais…

F

Lita,

Por que você está buscando o oid e também utilizando SequenceGenerator na entidade que vai ser persistida?
Poderias, por gentileza, postar o fonte do método getSequenceValue?

L

opa esqueci de comentar, eu consegui gravar do jeito q eu queria no banco, só comentei essas linhas:

// @SequenceGenerator(name="SEQUENCIAL_IDSEQUENCIAL_GENERATOR", sequenceName="SEQ_SEQUENCIAL") // @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SEQUENCIAL_IDSEQUENCIAL_GENERATOR")

Obrigada a todos pela ajuda.

Criado 5 de agosto de 2013
Ultima resposta 28 de ago. de 2013
Respostas 3
Participantes 3