Na verdade, vc jah tah montando o combo box, sem utilizar scriplet, o que você está fazendo, é popular um java.util.List no seu JSP, o que é totalmente ante-mvc. Vc precisa, popular esta lista no seu controller, enviar ao Action do Struts, e populá-lo no FormBean. Então, na sua jsp, vc usa o objeto do FormBean.
Ps.: BBCode é uma coisa legal.
fiaux
S e você já está usando Struts pq não cria uma action?
E
emerson.rodrigo
no caso de criar uma action…em que momento eu chamo essa action ?? e como eu faço para chamar ?.. pois no meu jsp eu ja chamo uma action para incluirMusica… neste caso, eu teria que chamar outra action para popular minha lista ??..
fabiozoroastro
Bem, vc vai ter que entender o funcionamento do struts. Funciona assim:
No seu struts-config.xml, vc define a sua classe Action.
Na sua action, no método execute(), vc chama um método do seu controller, para retorna uma lista com seus registros.
Dpois vc pega essa lista e seta num atributo do FormBean. Daí no jsp, vc acessa esse form bean com as tags do struts e exibe-os num combo.
Abraço.
Cara, se vc não souber mesmo do struts, vai ser complicado vc fazer isso agora. Te aconselho a estudar o funcionamento teorico do struts antes de implementar. Abraço.
E
emerson.rodrigo
Blz.
Vamos lá..... estou começando agora com struts. minha duvida e o seguinte:
NO MEU JSP EU TENHO QUE CARREGAR UM COMBO DINAMICO. SENDO QUE NO MESMO JSP EU JA TENHO UMA ACTION ONDE EU GRAVA UM REGISTRO. MINHA PERGUNTA E O SEGUINTE. EU TENHO QUE CRIAR UMA ACTION SO PARA POPULA MINHA LISTA E PREENCHER O COMBO ?
SEGUE ABAIXO O MEU CODIGO !!!!!!!!!!!
Tenho um jsp para incluirMusica(incluirMusica.jsp). action=/adicionaMusica
publicclassAdicionaMusicaActionextendsAction{@OverridepublicActionForwardexecute(ActionMappingmap,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){// logSessionsession=newHibernateUtil().getSession();// dados do formulario MusicaAdicionaMusicaFormformulario=(AdicionaMusicaForm)form;Musicamusica=formulario.getMusica();session.beginTransaction();session.save(musica);session.getTransaction().commit();// ok...visualizacaoreturnmap.findForward("ok");}
fabiozoroastro
Emerson,
Todas as ações dessa página podem estar na sua action.
No seu execute, vc tb chama o método de popular o valor no formBean. Vc pode usar o atributo parameter na tag action do struts, para executar determinados métodos na sua action, ao invéz de fazer tudo no execute. Dê uma pesquisada. Abraço.
E
emerson.rodrigo
Fabio,
vc não teria um exemplo ?
fabiozoroastro
Emerson, infelizmente não cara.
Dá uma procurada aí na net q vc acha…
Abraço.
Ps.: Acho q tenho um exemplo lá em casa, se quiser, eu posso dar um procurada a noite. T+!
D
dangremon
fabiozoroastro:
Emerson,
Todas as ações dessa página podem estar na sua action.
No seu execute, vc tb chama o método de popular o valor no formBean. Vc pode usar o atributo parameter na tag action do struts, para executar determinados métodos na sua action, ao invéz de fazer tudo no execute. Dê uma pesquisada. Abraço.
Procure sobre DispatchAction.
Sobre as comboBox, popule um atributo List no seu formBean (no caso com List) e na jsp chame