Atualização das chaves removidas no Hibernate  XML
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Autor Mensagem
crpablo
Java Ninja
[Avatar]

Membro desde: 09/11/2007 14:48:58
Mensagens: 296
Localização: Floripa/Brazil
Offline

Fala galerinha...

O que eu to fazendo é o seguinte:

No meu sistema tem um cadastro de mapas(localidade onde fica um equipamento) e dentro desse mapa são cadastrados equipamentos.... 1 ou mais...
Esses equipamentos possuem alguma opções a serem selecionadas no momento do cadastro, ou mesmo em uma edição posterior.

O meu problema está sendo o seguinte, quando eu cadastro, por exemplo, 3 equipamentos, os mesmos me gerariam 6 opções cadastradas. As chaves dessas opcoes seriam 1,2,3,4,5,6. Quando eu deleto o equipamento 2, as chaves 3 e 4 são apagadas, permanecendo 1,2,5,6 no bd... até aí tudo bem.
Eu exporto esses dados para um XML(para uma mudança de bd ou backup) e ele exporta corretamente, somente as chaves 1,2,5,6. Porém quando eu deleto meu banco e vou importar esses dados do XML a chave fica da seguinte maneira: 1,2,3,4... ou seja... ele atualiza as chaves de maneira sequencial e quando o hibernate procura pela chave 5 ele me gera e seguinte exception:
javax.persistence.EntityNotFoundException: Unable to find model.OpcaoEquipamento with id 5


Alguém tem uma idéia de como resolver isso?...

Segue minhas class:

Equipamento.java


OpcaoEquipamento.java


Equipamento_OpcaoEquipamento.java


Acho que é isso...

To quebrando a cabeça com isso... =S

[]'s

This message was edited 1 time. Last update was at 07/04/2008 14:51:29




Pablo

[Email] [WWW] [Yahoo!] aim icon [MSN] [ICQ]
Filipe Sabella
GUJ Expert

Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline

E por que o Hibernate continua a procurar pela pk com valor 5?

Ao deletar tudo do banco você reseta também as sequences?

This message was edited 1 time. Last update was at 07/04/2008 16:53:49


Former LIPE.
[ICQ]
crpablo
Java Ninja
[Avatar]

Membro desde: 09/11/2007 14:48:58
Mensagens: 296
Localização: Floripa/Brazil
Offline

Filipe Sabella wrote:E porquê o Hibernate continua a procurar pela pk com valor 5?

Ao deletar tudo do banco você reseta também as sequences?


Fala Filipe...

Essa é a classe q tah procurando o ID = 5.....


Quanto a sequence, não to resetando... na real nem sei como se faz isso...

[]'s



Pablo

[Email] [WWW] [Yahoo!] aim icon [MSN] [ICQ]
Filipe Sabella
GUJ Expert

Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline

Vamos seguir a sequência?

1. Usuário quer importar o banco do arquivo
2. Aplicação deleta todos os registros
3. Aplicação insere os registros a partir do arquivo
4. Aplicação comita a transação

Até aí está certo? Se sim, de onde está saindo esse id 5?

Former LIPE.
[ICQ]
crpablo
Java Ninja
[Avatar]

Membro desde: 09/11/2007 14:48:58
Mensagens: 296
Localização: Floripa/Brazil
Offline

Filipe Sabella wrote:Vamos seguir a sequência?

1. Usuário quer importar o banco do arquivo
2. Aplicação deleta todos os registros
3. Aplicação insere os registros a partir do arquivo
4. Aplicação comita a transação

Até aí está certo? Se sim, de onde está saindo esse id 5?


Bora...

1 - Ok
2 - Eu deleto a base e crio novamente
3 - A partir dos XML's
4 - Pega o XML 1 comita, XML 2 comita, etc...

Eu importei os arquivos 1 por 1, e é quando eu importo Equipamento_OpcaoEquipamento que ele procura por esse ID 5...


This message was edited 1 time. Last update was at 08/04/2008 09:24:03




Pablo

[Email] [WWW] [Yahoo!] aim icon [MSN] [ICQ]
crpablo
Java Ninja
[Avatar]

Membro desde: 09/11/2007 14:48:58
Mensagens: 296
Localização: Floripa/Brazil
Offline

O que eu to precisando mesmo, é que na hora de fazer o import, o hibernate não atualize as chaves das opções.
Acho que ele deveria persistir no bd com as chaves 1,2,5,6, assim não teria problemas com os outros imports.

Alguém?

[]'s



Pablo

[Email] [WWW] [Yahoo!] aim icon [MSN] [ICQ]
 
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Ir para:   
Powered by JForum 2.1.8 © JForum Team