[webwork]Inputs

9 respostas
_fs

Olá, boa tarde.

Dúvida aparentemente besta, mas: como eu faço para pegar o ‘name’ dos meus inputs na minha action?

Valeu!

9 Respostas

smota

No WW todo o formulário são propriedades da sua action ou do modelo …

entonces basta vc criar uma propriedade e fazer a dupla set/get pra ele.

_fs

Desculpe, não entendi direito …

como que eu atribuo o valor do ‘name’ para uma variável?

smota
Class myAction extends ActionSupport {
        private String campo;

        public void setCampo(String value) {
                campo = value;
        }

        public String getCampo() {
                return campo
        }
}

Pronto, no formulário se você tiver submetendo pra action mapeada pra essa classe com um campo chamado "campo" ele terá o valor do input.

Dê uma lida na introdução do wiki que explica isso bem, inclusive com outros tipos diferentes de String.

_fs

ah hehe então eu me expressei mal cara :smiley:

minha dúvida é como pegar o NAME do input dinamicamente, não o VALUE :smiley:

smota

hein?

Como o “name” ?!? O name é o mesmo que da sua propriedade …

om1
Map parameters = ActionContext.getSingleValueParameters();
_fs

Valeu cara, ja vou testar :smiley:

E Smota, o objetivo disso seria para preencher os inputs com um laço e não fazer um bean para cada um deles (no meu caso pode chegar a mais de 40).

cv1

Po, dai vc vai fazer ainda mais codigo na mao!

Pq vc nao deixa que o Eclipse gera os seus getters e setters, e deixa que o WebWork se vira pra converter os dados (ele eh espertinho, ele sabe converter ints, longs, booleans, Dates, chars e tudo mais)? Acho que eh beeeeeeem menos trabalho do que usar a dica do om :wink:

om1

agora acho q entendi o q vc quer fazer…

se vc for percorrer esse map pra pegar os atributos por nome para então setar as propriedades, vc vai ter mto mais trabalho.

o cv tem razão.

Criado 15 de janeiro de 2004
Ultima resposta 15 de jan. de 2004
Respostas 9
Participantes 4