| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 10:01:05
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
Bom dia,
Numa aplicação eu tenho uma tela chamada consultaMaterial que tem um Form (Struts) e um Action. Do action dessa página eu posso ir para uma página cadastraMaterial que tem seu próprio Form.
Só que ambas as páginas tem os mesmos campos nos dois Forms (uma para pesquisa e uma para inserção e alteração). O que acontece é que quando eu vou de uma página para outra os campos preenchidos no formulário HTML de uma são passados para a outra. Então, se eu clico no botão "Novo Material" na página de consulta e tinha alguma coisa no campo "nome", por exemplo, o formulário da página de cadastro vem com o nome preenchido.
A única solução que eu achei até agora é colocar nomes diferentes nos formulários. É isso mesmo ou tem uma solução menos trabalhosa?
Um abraço.
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 10:28:04
|
skill_ufmt
JavaEvangelist
![[Avatar]](/images/avatar/8248a99e81e752cb9b41da3fc43fbe7f.png)
Membro desde: 20/05/2003 18:02:23
Mensagens: 318
Localização: Cuiabá - MT
Offline
|
crisadias wrote:Bom dia,
A única solução que eu achei até agora é colocar nomes diferentes nos formulários. É isso mesmo ou tem uma solução menos trabalhosa?
Um abraço.
Acredito que isso só ocorre pois seus dados estão na sessão, certo?
Se você já não precisa mais dos dados do primeiro Form, ou já colocou eles em outro lugar, você pode simplesmente anular a seção, ou o campo que você queira setando NULL, ou coisas do tipo.
Fora isso, use request, ou troque os nomes...
|
Windows: Not Plug & Play, but Bug & Pay!
_________________________________________________
Kivanio Pereira Barbosa
Bacharel em Ciência da Computação
CUIABÁ JAVA USERS
www.cajumt.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 11:40:47
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
Kivanio,
o Form da página está com o scope=request. Só que ainda assim a informação chega na próxima página. A ordem de execução é assim:
consultaMaterial.jsp (que tem um campo nome para pesquisa)
consultaMaterialAction.do (remete para o action)
ConsultaMaterialAction.class (retorna o forward para cadastroMaterialAction.do)
cadastroMaterialAction.do (que faz alguma verificação e preenche selects)
CadastroMaterialAction.class (que faz alguma verificação e preenche selects)
cadastroMaterial.jsp (que mostra o formulário e no nome aparece o que estava na página jsp anterior)
Como eu faço para apagar a informação que está no request?
Obrigado pela ajuda.
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 12:03:38
|
Mauricio Linhares
Moderador
![[Avatar]](/images/avatar/97af07a14cacba681feacf3012730892.jpg)
Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline
|
Chame reset na mão (no tal form) quando for carregar a outra página.
|
Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr
Screencast de Introdução a linguagem Objective-C |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 16:36:48
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
Maurício,
já tentei resetar o Form, mas o problema, acredito, é o request que está sendo enviado. Se eu troco o method por get aparece na barra de endereços:
http://localhost:7001/testes/consultaUsuarioAction.do?
pagina=consultaUsuario&
chave=2&
matricula=2&
nome=3&
opcao=Novo
E essas informações são interceptadas pelo Form da página cadastroUsuario.jsp que é aberta ao fim do processamento dessa chamada.
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 16:42:03
|
jgbt
GUJ Master
![[Avatar]](/images/avatar/25df35de87aa441b88f22a6c2a830a17.png)
Membro desde: 04/06/2003 15:01:48
Mensagens: 1286
Localização: Porto Alegre/RS
Offline
|
se vc usar os mesmos nomes, isso vai acontecer.
vc pode fazer uma gambiarra com java script e limpar os campos na mão.
não é a melhor solução, mas funciona.
[]'s
|
João Bier
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 16:43:52
|
Mauricio Linhares
Moderador
![[Avatar]](/images/avatar/97af07a14cacba681feacf3012730892.jpg)
Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline
|
Mas existe um action que recebe essa requisição ou ela vai direto pra um .jsp? Você implementou o método reset lá no seu ActionForm?
|
Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr
Screencast de Introdução a linguagem Objective-C |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 16:51:11
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
Existe um action que recebe a requisição e chama o action da outra página. Eu implementei o reset para limpar as variáveis do form. Isso bastaria?
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 16:53:28
|
Mauricio Linhares
Moderador
![[Avatar]](/images/avatar/97af07a14cacba681feacf3012730892.jpg)
Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline
|
Deveria bastar, porque quando ele fosse passado de um lado pro outro o método reset deveria ser chamado antes dele ser reutilizado.
Comportamento estranho esse...
|
Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr
Screencast de Introdução a linguagem Objective-C |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 16:59:16
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
vou tentar fazer de novo e ver se consigo limpar.
Obrigado.
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 17:02:57
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
Olha outra coisa curiosa:
Agora eu coloquei um botão de voltar em cada uma das duas páginas. Quando eu clico em voltar na segunda página ele volta, passa direto pela primeira e vai para o índice da aplicação. Como se eu tivesse clicado no voltar das duas páginas.
O parâmetro do formulário é passado adiante. Eu posso até ler ele na página de índice se quiser.
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2005 17:08:40
|
crisadias
Entusiasta Java
Membro desde: 09/05/2005 10:59:04
Mensagens: 18
Localização: Rio de Janeiro - RJ
Offline
|
há.... mancada minha... e das feias..
Tava tratando o reset no formulário da página de consulta e não na página de cadastro que é o que eu queria limpar...
E lá se foram horas de bons serviços prestados...
valeu pela ajuda...
|
Cristiano Araujo Dias
Desenvolvedor de Soluções
Rio de Janeiro - RJ |
|
|
 |
|
|