Classe está como detached e não consigo excluir pelo Hibernate  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
marcoroberto
What is classpath?

Membro desde: 08/12/2006 20:25:01
Mensagens: 9
Offline

Bom dia pessoal, estou desenvolvendo um aplicativo com MyFaces + Hibernate 3.1.3 e quando estou tentando excluir um registro que está ativo em minha sessão estou recebendo a seguinte mensagem:

the detached instance passed to delete() had a null identifier

Verifiquei na documentacao do Hibernate e detached é um dos tres estados que um objeto pode estar e simplemeste resolveria utilizar um Lock, SaveOrUpdate.... mas não está funcionando, reparei q se antes de eu Deletar der um session.persist(objeto) consigo excluir... mas acho q isso nao é o mais correto...

Obrigado
alots_ssa
JavaEvangelist

Membro desde: 19/07/2005 11:21:24
Mensagens: 469
Localização: Salvador
Offline

É porque você está tentando deletar um objeto que não foi persistido ainda. O erro é justamente este, , quer dizer que ele está sem id. Tente setar um id que ja éxiste no banco nele e chame o metodo, provavelmente vai deletar.

Alberto

http://alots.wordpress.com
[WWW] [MSN]
marcoroberto
What is classpath?

Membro desde: 08/12/2006 20:25:01
Mensagens: 9
Offline

Ola na verdade ele está persistido e possui ID, eu estou fazendo o seguinte no meu DataTable:



e mando para a pagina do formulário onde o usuário possui o botão de Excluir:



dai acontece o erro! será q pode ser outra coisa ?
transvaal
Debugger

Membro desde: 28/04/2006 07:36:05
Mensagens: 57
Offline

Deves tá tentando exluir um objeto que nem chegou a ser persistido.
marcoroberto
What is classpath?

Membro desde: 08/12/2006 20:25:01
Mensagens: 9
Offline

Então esse registro q tento excluir ja está persistido sim, eu na verdade faço o seguinte caminho em minha aplicação:

Pagina de Pesquisa > Seleciono o registro > Exibo o registro em um formulario > Pressiono o botão Excluir > Ocorre o erro


Um detalhe q esta me deixando meio confuso é q se antes de realizar o session.delete(obj) faço um session.persist(obj) ele persiste um novo objeto no banco e exclui o antigo...

 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team