Carregamento vRaptor / data truncation  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
mondor
Thread.start()

Membro desde: 25/05/2011 09:48:38
Mensagens: 33
Offline

Fala galera!

Estou aqui enchendo o saco de vocês novamente afinal, aprender java e fazer as coisas não é tão fácil :B

Galera, tenho minha entity


Possuo também meu form:


Por fim, meu controller:


Bom, reparei que no meu controller o usuário tanto quanto destinatário ou remetente só vem com a ID preenchida, se eu tentar pegar por exemplo getNome() vai vir null, este problema eu resolvi procurando o usuário pelo único dado que tenho:


Primeira dúvida! Eu devo sempre dar um load nele assim? O vRaptor já não faz o load automaticamente, sendo que a id é chave primária?

Bom, mesmo carregando ou não o usuário, sempre da um erro de:


O campo da tabela, está como tinyblob! Como posso resolver isto?
garcia-jj
JWizard

Membro desde: 13/04/2009 22:11:50
Mensagens: 2715
Localização: Porto Alegre
Offline

O campo destinatario possui um valor menor do que o valor que você está passando. Aumente o tamanho deste campo.

http://github.com/garcia-jj
Não respondo dúvidas via MP. Use o fórum.
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

sugiro que vc dê um drop no database inteiro e deixe o eclipse recriar...

mas antes disso, vc precisa anotar os relacionamentos com @ManyToOne ou @OneToOne.

O vraptor não faz load automaticamente do banco. Na próxima versão vc poderá falar para ele fazer isso, mas não vai ser automático (nem sempre vc quer carregar do banco).

--
Caelum
www.caelum.com.br

mondor
Thread.start()

Membro desde: 25/05/2011 09:48:38
Mensagens: 33
Offline

Lucas Cavalcanti wrote:sugiro que vc dê um drop no database inteiro e deixe o eclipse recriar...

mas antes disso, vc precisa anotar os relacionamentos com @ManyToOne ou @OneToOne.

O vraptor não faz load automaticamente do banco. Na próxima versão vc poderá falar para ele fazer isso, mas não vai ser automático (nem sempre vc quer carregar do banco).


Lucas, na mosca!
Bastou dar um drop no banco. Eu havia dado um drop na tabela apenas, já não deveria funcionar? Mas ok!

Lucas, vai ser necessário eu carregar os usuários mesmo? Não posso passar um objeto Usuário, com apenas a id correta?
Pois no banco mesmo, só possui a id certo?
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

no banco vai ser só o id, mas o hibernate precisa saber que isso é um relacionamento... então anote com @ManyToOne ou @OneToOne (dependendo do tipo de relacionamento que vc estiver usando)

--
Caelum
www.caelum.com.br

mondor
Thread.start()

Membro desde: 25/05/2011 09:48:38
Mensagens: 33
Offline

Perfeito, entendi. Última, como consigo passar um parametro sem ser pelo input ou hidden?
Por exemplo,


Não faz nem sentido por em uma combo apenas uma opção. E se por disabled na combo, não conseguimos pegar o valor.
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

se vc não quer que o cara mude, use um input com o atributo readonly

--
Caelum
www.caelum.com.br

mondor
Thread.start()

Membro desde: 25/05/2011 09:48:38
Mensagens: 33
Offline

tudo bem, mas estarei mostrando do mesmo jeito... acho que a solução vai ser campo hidden mesmo
O usuário remetente eu consegui pegar no controller tranquilo, mas este usuario não dá.

mas já está ok assim lucas, muito obrigado! (:
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

vc pode pegar esse usuário do lado do servidor também...
daí não precisa do input hidden

--
Caelum
www.caelum.com.br

mondor
Thread.start()

Membro desde: 25/05/2011 09:48:38
Mensagens: 33
Offline

como poderia pegar no controller?

O remetente consegui pois o usuarioWeb é sessionscoped e component, aí consegui injetar no construtor
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

e como vc pensa em escolher o destinatário?

--
Caelum
www.caelum.com.br

mondor
Thread.start()

Membro desde: 25/05/2011 09:48:38
Mensagens: 33
Offline

Basicamente, quando o usuário logado acessa a página do destinatario... "/perfil/destinatario"

Carrega um Usuario que é o destinatario

Então o remetente é o usuarioWeb logado.
O destinatario é o usuario que está acessível via get do /perfil/destinatario

Passo ele para o alerta através do form mesmo, como alerta.destinatario.id\ que possui o valor usuario.id

Deu pra entender né? haha
Por isso fiquei na dúvida, de como passar ele pro alerta se ele não estiver no form. Acho que terei que ficar com a combo ou campo hidden.
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

não tem como passar pra requisição se não for pelo form (ou pela URL)

--
Caelum
www.caelum.com.br

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