VRaptor3 + Hibernate + Relacionamento @OneToMany  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
gabrielmassote
Java Ninja
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 258
Offline

E ae Pessoal?

Estou começando com o hibernate e com o vraptor e estou com uma dificuldade em armazenar os dados utilizando o relacionamento @OneToMany.

Minha classe Projeto:


Minha classe Usuário:


E o que gostaria de fazer é que um projeto tivesse vários usuários. Só que não estou conseguindo fazer isso no meu controller para que apareca o projeto específico na chave estrangeira da minha tabela referente ao Bean Usuário.

Alguma dica?
Grato pessoal.

Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
Guevara
GUJ Master
[Avatar]

Membro desde: 24/02/2009 17:56:09
Mensagens: 1023
Offline

E ai gabrielmassote!
Veja se a sua dúvida é a mesma que a minha.
http://www.guj.com.br/posts/list/204789.java
Meu problema tb é persistir os dados.
Abraço!



Analista de Sistemas e desenvolvedor WEB Java e Python
http://twitter.com/eguevara2012
[WWW]
gabrielmassote
Java Ninja
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 258
Offline

E aee..
Creio que seja sim!

Eu tenho o projeto e a chave estrangeira no usuário está nula. Não consigo cadastrar o projeto em que os usuários estão envolvidos.
Gostaria de criar um projeto e na página onde eu vejo os dados do projeto (está funcionando). Gostaria de adicionar usuários a este projeto.

Vamos esperar a contribuição do pessoal.

[]'s

Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
Guevara
GUJ Master
[Avatar]

Membro desde: 24/02/2009 17:56:09
Mensagens: 1023
Offline

Pois é, me disseram que deveria instanciar a outra classe tb, eu fiz isso, mas na classe Mensagem fica com a chave estrangeira nula, o mesmo problema que o seu. Revirei td quanto é fórum e não achei um exemplo de form para persistir esse tipo de relacionamento, por exempo, na minha classe Contato não existe atributo assunto e mensagem, pois eles estão na classe Mensagem, e se colocar no form contato.mensagem.assunto a stacktrace mostra que o parâmetro não é encontrado, já que Contato não possui atrinuto "mensagem". A menos que além da anotação com JPA precise criar código na classe Contato para que esta devolva assunto e mensagem, o que eu acho que não deve ser.

<editado>Responderam lá no meu tópico, vou testar aqui. Confere lá vc tb.</editado> \o/
http://www.guj.com.br/posts/list/204789.java

This message was edited 2 times. Last update was at 27/04/2010 00:11:41




Analista de Sistemas e desenvolvedor WEB Java e Python
http://twitter.com/eguevara2012
[WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6394
Offline

@OneToMany com mappedBy cria um relacionamento fraco... não adianta só adicionar um usuário nessa lista que não vai adiantar... vc precisa no usuário setar o projeto, daí funciona...

ou seja, ao invés de fazer

faça

--
Caelum
www.caelum.com.br

Lavieri
GUJ Master
[Avatar]

Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline

Uma forma de resolver a parada é:




e crie o listener asssim



assim seu problema resolve

Sun Certified Java Programmer (SCJP 6)

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999

Meu blog -> http://blog.tomazlavieri.com.br/
[ICQ]
caarlos0
JavaChild
[Avatar]
Membro desde: 22/04/2009 12:20:38
Mensagens: 108
Localização: Medianeira - PR
Offline

não conheço essas anotações:


explica?

This message was edited 1 time. Last update was at 27/04/2010 07:43:48


Arch Linux + KDE SC 4.6
Concluindo Análise e Desenvolvimento de Sistemas (UTFPR)
http://twitter.com/caarlos0 | http://geekvigarista.com

Carine Meyer <3
[Email] [MSN]
gabrielmassote
Java Ninja
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 258
Offline

Tudo bem Lucas?

E se eu fizer um JOIN entre as tabelas me gerando uma tabela com chaves estrangeiras? Qual seria o mais recomendado?
Vi na documentação do hibernate que utilizando apenas o @OneToMany na classe Project ele criaria um JOIN entre Project e User.

Testei isto antes de dormir só que ainda não tentei popular. Seria de uma forma diferente?




Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6394
Offline

qdo vc coloca o @OneToMany ou @ManyToOne (e outras desse tipo) o hibernate vai fazer o join pra você automaticamente quando vc buscar a entidade do banco de dados... só anotando os relacionamentos com isso o hibernate já se vira pra criar a coluna (ou tabela) de relacionamento, vc não precisa se preocupar

--
Caelum
www.caelum.com.br

 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team