| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 11:13:52
|
SadNess
JavaTeenager
![[Avatar]](/images/avatar/752356ce55e0b436a9027914cb7e18a7.jpg)
Membro desde: 30/03/2006 16:51:25
Mensagens: 197
Offline
|
to com um problema aqui
seguinte
tenho um actionForm e cada propriedade tem seus getters e setters:
e tenho uma jsp com o seguinte trecho:
mas quando eu dou um submit neste form, eu recebi a seguinte excecao:
Eu nunca utilizei um ActionForm antes que possui um ArrayList como propriedade
tenho praticamente certeza que é aqui que está o problema, deve ser algo do tipo ele estar esperando um array e estar recebendo apenas um valor
mas não sei como solucionar este problema
alguém tem alguma ideia?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 14:41:00
|
bonfarj
Java Ninja
![[Avatar]](/images/avatar/1454ca2270599546dfcd2a3700e4d2f1.jpg)
Membro desde: 28/03/2006 09:55:47
Mensagens: 298
Offline
|
O problema é exatamente o que vc falou, veja:
Vc está passando o resultado do <html:select> para alFases, um objeto ArrayList, mas está enviando id, que deve ser um int ou Integer.
property é o atributo do ActionForm que será preenchido com o resultado do <html:select>.
value é o atributo de um objeto da lista name.property que será enviado como resultado do <html:select>.
label é o atributo de um objeto da lista name.property que será exibido para o usuário na combobox gerada pelo <html:select>.
Qualquer coisa estamos aí.
|
IGOR BRITO ALVES
@igoralves
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 15:29:56
|
SadNess
JavaTeenager
![[Avatar]](/images/avatar/752356ce55e0b436a9027914cb7e18a7.jpg)
Membro desde: 30/03/2006 16:51:25
Mensagens: 197
Offline
|
mas como eu resolvo este problema?
eu quero mandar um objeto Concurso pra action
Como eu faço pra que a jsp seja compatível com o ArrayList do Concurso?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 16:49:19
|
bonfarj
Java Ninja
![[Avatar]](/images/avatar/1454ca2270599546dfcd2a3700e4d2f1.jpg)
Membro desde: 28/03/2006 09:55:47
Mensagens: 298
Offline
|
Porque você não envia o atributo id da fase?
abraços,
|
IGOR BRITO ALVES
@igoralves
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 17:00:59
|
SadNess
JavaTeenager
![[Avatar]](/images/avatar/752356ce55e0b436a9027914cb7e18a7.jpg)
Membro desde: 30/03/2006 16:51:25
Mensagens: 197
Offline
|
não entendi muito bem oq vc disse cara
basicamente o que eu tenho é uma jsp que utiliza 2 actions
na jsp eu tenho 2 selects: um que mostra o nome dos concursos e um que é para escolher a fase do concurso
quando o cara seleciona o nome de um concurso, eu uso o "onchange" do select para mandar pra uma action que vai listar todas as fases que esse concurso tem e vai voltar para a mesma jsp, preenchendo o select de fases
e tem uma action que é executada quando se dá submit, para pegar o concurso escolhido e a fase deste concurso selecionada
não estou sabendo direito como implementar isto com strtus, ja que ele não aceita um arraylist a partir de um select
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 17:34:58
|
bonfarj
Java Ninja
![[Avatar]](/images/avatar/1454ca2270599546dfcd2a3700e4d2f1.jpg)
Membro desde: 28/03/2006 09:55:47
Mensagens: 298
Offline
|
Entendi, eu falei errado, nao era id da fase, era id do concurso. Vc pode fazer com q o select do concurso envie o id do concurso correspondente. Sabendo o id do concurso vc consegue definir o concurso e carrega o outro select com as fases desse concurso.
abraços,
|
IGOR BRITO ALVES
@igoralves
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 17:53:09
|
SadNess
JavaTeenager
![[Avatar]](/images/avatar/752356ce55e0b436a9027914cb7e18a7.jpg)
Membro desde: 30/03/2006 16:51:25
Mensagens: 197
Offline
|
sim
é isto o que eu fiz
o problema é que ele tenta passar um id da fase pro ActionForm da action, sendo que o atributo fases de Concurso é um ArrayList
o struts não sabe converter String em ArrayList, este é o problema, então eu recebo um BeanUtil.popolate() exception
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/12/2006 20:54:55
|
bonfarj
Java Ninja
![[Avatar]](/images/avatar/1454ca2270599546dfcd2a3700e4d2f1.jpg)
Membro desde: 28/03/2006 09:55:47
Mensagens: 298
Offline
|
Então, faça o seguinte:
No property do <html:select> passe o id da fase ao invés do ArrayList (se não existir um atributo para isso crie, algo como String idFase, por exemplo). Faça o mesmo para o outro <html:select>, preenchido com uma lista de concurso e que retorne um idConcurso.
abraços,
|
IGOR BRITO ALVES
@igoralves
|
|
|
 |
|
|