Bom dia galera. Estou usando o Struts 1.3 e os meus ActionForm sao DynaValidatorForm. A resposta de todos os meus formularios sao enviadas para a mesma pagina que enviou. Puts que explicacao hein! Ou seja, a resposta do meu formulario submetido sera ele mesmo. Para que se acaso o usuario quiser efetuar outro cadastro ele ja se encontra no mesmo. Dae surge alguns problemas que eu resolvi mas tenho duvidas. Antes, toda vez que eu submetia um dado a resposta vinha com os mesmos dados que foram enviados. Ou seja, os campos do formulario nao eram resetados. Reparei que a partir do momento que usei no meu Compomente ActionForward o elemento redirect=“true” os campos foram resetados. Procurei na internet a respeito e encontrei que ao usar este elementro (redirect=“true”) os seus parametros de solicitacao e os atributos do contexto da solicitacao sao removidos. Tentei usar o metodo reset() no meu Action mas nao surgiu efeito. Andei procurando e encontrei que se acaso eu sobrescrever o metodo reset() no meu action eu tenho que retirar os meus atributos da sessao.
DynaValidatorForm dyna = (DynaValidatorForm)form;
request.getSession().removeAttribute("listaContratos");
request.getSession().removeAttribute("listaModulos");
dyna.reset(mapping, request);
Tambem usei e nao surgiu efeito. Nesse meu caso eu vou ter que usar esse elemento (redirect=“true”) sempre para dar certo?
<action
path="/SaveInsertModuloContratadoAction"
type="br.com.MGFSuporte.controller.EditModuloContratadoAction"
name="SaveInsertModuloContratadoForm"
scope="request"
parameter="operacao"
input="/pages/cadastro/CadastroModuloContratado.jsp">
<forward
name="success"
path="/CadastroModuloContratado.do"
redirect="true"/>
</action>
Obrigado!