(Pequena novela)
Cara, o que acontece eh o seguinte: na minha aplicação, existe um <html:form action="/users">, que apresenta uma lista de usuarios na tela. Tudo funciona perfeitamente, pelo menos em princípio. Acontece que um dos botões nesta tela leva a uma outra tela para editar o usuário e voltar a esta. Aí eu pensei: " :idea: Pô, este negócio de ficar criando um ActionForm para cada html:form não tá com nada, isto vai explodir exponencialmente…" E resolvi tentar o seguinte: criar o novo form do outro jsp (o de editar o usuario) com <html:form action="/users">, ou seja, usar o mesmo ActionForm e tudo o mais. Bastaria acrescentar novas variáveis membro + getters & setters. Só que aí aconteceu algo estranho: quando eu alterava o valor de uma propriedade, a página jsp carregava, mas os controles apareciam com o valor antigo da propriedade. O pior é que quando eu avaliava no mesmo ponto a propriedade com uma expressão EL, o valor aparecia atualizado na EL mas não no controle. Aí eu resolvi criar um bean só para associar aos controles da tela de editar, e removi variáveis + getters and setters do ActionForm. Note q o bean NÃO é um ActionForm. Ok, funcionou, os valores apareceram corretamente, mas ao alterar os valores no controle e submeter o form, o bean não tava nem aí e não era alterado. :?
Resumindo, desisti da idéia original e estou fazendo as coisas como sempre, um ActionForm para cada html:form. Da próxima vez, vou ver se aprendo DynaAction, me falaram que é melhor para reutilizar código. :roll:
Mais uma vez, valeu. 8)