| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/01/2012 11:08:16
|
salmaox
JavaChild
![[Avatar]](/images/avatar/70370fb7bbcf61a2da316dfdc1d42443.jpg)
Membro desde: 21/04/2009 11:08:33
Mensagens: 120
Offline
|
Boa Tarde,
Alguém poderia me explicar como funciona as transações do EntityManager(begin, commit, rollback) no Vraptor 3? Sei que por default o Vraptor tem os métodos anotados @PostConstruct e @PreDestroy. Não criei minha classe de JPAUtil onde crio os entityManager, apenas coloquei-as no web.xml, dessa forma não sei como trabalhar isso pois estou tendo problemas por não saber direito o estado no meu objeto.
web.xml
Estou tendo um erro na hora de cadastrar a Entidade Operador
OperadorController
DAO.java
OperadorDAO.java
Muito obrigado
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/01/2012 13:25:49
|
bronx
JavaTeenager
![[Avatar]](/images/avatar/9606eb3c0bc6676d20ca3196b94ba7e4.jpg)
Membro desde: 24/08/2009 02:59:47
Mensagens: 197
Offline
|
Cara, dá uma olhada no interceptor que cuida das transações:
https://github.com/caelum/vraptor/blob/master/vraptor-core/src/main/java/br/com/caelum/vraptor/util/jpa/JPATransactionInterceptor.java
Mas acho que o problema não é com a transação.
Quando você comita, seu código parece estar violando alguma regra relacional das entidades.
Verifique se o "grupo" está presente no objeto "operador". Veja se o id do grupo está correto etc.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/01/2012 14:02:02
|
salmaox
JavaChild
![[Avatar]](/images/avatar/70370fb7bbcf61a2da316dfdc1d42443.jpg)
Membro desde: 21/04/2009 11:08:33
Mensagens: 120
Offline
|
bronx,
Os relacionamentos estão OK, pois eu tava fazendo usando a session do hibernate e tava funcionando certinho. Porém resolvi mudar pra usar a JPA.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/01/2012 16:51:37
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
|
o problema:
javax.validation.ConstraintViolationException: validation failed for classes [br.org.cemaden.bean.Operador] during persist time for groups [javax.validation.groups.Default, ]
deu erro de validação..
vc tá chamando o validator.validate(objeto); ??
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/01/2012 07:39:30
|
salmaox
JavaChild
![[Avatar]](/images/avatar/70370fb7bbcf61a2da316dfdc1d42443.jpg)
Membro desde: 21/04/2009 11:08:33
Mensagens: 120
Offline
|
é isso mesmo Lucas, ele tá dando erro no meu pacote "package br.org.cemaden.util;" onde está minha classe "Validator" e está mandando configurar a build path. Mas olhei e está tudo OK. Nenhuma biblioteca aparentemente está com erro, e já exclui e coloquei o jar do vraptor novamente mas nada...Será que pode ser algum outro jar que esteja conflitando com o jar do vraptor 3? Pq essa classe funcionava normal...
Segue a classe
This message was edited 1 time. Last update was at 24/01/2012 08:39:31
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/01/2012 08:57:57
|
salmaox
JavaChild
![[Avatar]](/images/avatar/70370fb7bbcf61a2da316dfdc1d42443.jpg)
Membro desde: 21/04/2009 11:08:33
Mensagens: 120
Offline
|
Consegui arrumar o lance do erro no pacote adicionando o jar hamcrest-all-1.2RC3.jar . A validação está OK.
No entanto, continua o mesmo erro...acima
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/01/2012 11:42:30
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline
|
tente chamar o validator.validate passando esses objetos
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/01/2012 12:37:41
|
salmaox
JavaChild
![[Avatar]](/images/avatar/70370fb7bbcf61a2da316dfdc1d42443.jpg)
Membro desde: 21/04/2009 11:08:33
Mensagens: 120
Offline
|
Perfeito Lucas,
Qnd usei o validator.validate(objeto) ele usa a validação do Hibernate, aí pude perceber que havia anotado alguns campos com @Null, com essa anotação o campo deveria ser vazio. Foi só tirar a anotação que deu certo. Voltei até a usar a validação do VRaptor.
Muito obrigado.
Abs
|
|
|
 |
|
|