STRUTS e SERVLETS ! Iniciando

3 respostas
V

Vamos supor que eu tenha uma servlet parecida com

if (acao.equals(incluir)) {

System.out.println(alterando algum produto…”);

//resto do codigo

}
else if (acao.equals(alterar)) {

System.out.println(alterando algum produto…”);

//resto do codigo

}

e nos jsps de inclusao e alteracao eu passaria o parametro acao=incluir
ou acao=alterar e o resto dos campos do form codigo nome etc

eu tentei colocar no jsp de inclusao

<html:form action="/produtoservlet.do?acao=incluir" focus=“idProduto” method=“GET”>

mas qdo dou submit ele monta a linha sem o parametro acao , somente com os campos do formulario…

Dá p/ passar o parametro de alguma maneira ???

Obrigado, Valmir

3 Respostas

cu_ringa

se vc tiver usando Struts pode usar as classes DispatchAcion, LookupDispatchAction… , sem precisar passar esses parametros como vc esta fzd.

V

ok !!! funcionou !!!

criei um parameter no struts config e
<html:submit property=“acao” > pesquisar </html:submit>

É possivel mostrar uma outra msg no botao de submit ???

ele coloca no parametro acao=“o que estiver no botao” e se vc quiser deixar no botao enviar dados mas na linha de envio que fique acao=pesquisar ???

obrigado!!!

cu_ringa

usando LookupDispatchAction vc pode colocar o q qz como label do botao, e la na Action colocar no Map o nome metodo q vc queira chamar ex:
codigo JSP

...
&lt;html:submit styleClass="botao" property="method"&gt;&lt;bean:message key="botao.cadastrar" /&gt;
...

codigo Action

...
protected Map getKeyMethodMap(){
			
  Map map = new HashMap();
  map.put("botao.cadastrar", "cadastrar");
  map.put("botao.alterar", "alterar");
  map.put("botao.excluir", "excluir");
  map.put("botao.pesquisar", "pesquisar");
						
  return map;		
}
...

public ActionForward cadastrar(ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException{
 ...
 return map.findForward("sucesso");
 ...
}

...

Qnd se usa a classe LookupDispatchAction vc obrigatoriamente tem q sobrescrever o metodo getKeyMethodMap. Observe q nesse metodo a chave do Map é o nome do botao e entao ele acessa o objeto q é o nome do metodo chamado, desse modo vc pode colocar o q qz como label do botao; espero q tenha ajudado.

Criado 1 de maio de 2005
Ultima resposta 2 de mai. de 2005
Respostas 3
Participantes 2