Duvida no struts

e ai pessoal blz, estou começando no struts e gostaria de tirar a seguinte duvida:

  • eu tenho as seguintes paginas jsp cadatrar, editar, pesquisar, excluir, como eu posso fazer para definir um unico action no struts-config.xml, dizendo para qual pagina tem que ser apontada de acordo com qual botao eu clicar em uma pagina index.jsp?

abaixo vou colocar uma parte do struts-config que eu encontrei em um exemplo que acredito que seja ele que tenha que estar usando:

 	    <action
             path="/funcionario"
             name="funcionarioForm"
             type="br.com.action.funcionarioAction"
             input="funcionarioForm"
             scope="request"
             parameter="op"
             validate="true">
             <forward name="pesquisar" path="/do/showpage?page=Pesquisar" />
             <forward name="incluir"   path="/do/showpage?page=Incluir"   />
             <forward name="alterar"   path="/do/showpage?page=Alterar"   />            
             <forward name="excluir"   path="/do/showpage?page=Excluir"   />                                  
         </action>    

O problema eh como colocar no botao onde para qual pagina indicar?

valeu pela ajuda

É só no método da sua action você dar o forward para a página que quiser.

valeu, mais como seria o codigo que eu tenho que por no botao para ele saber a qual pagina eu estou me referindo?

Ex: como exemplo oq eu teria que por no botao:

<html:submite>Cadastrar</html:submite>
<html:submite>Pesquisar</html:submite>
<html:submite>Editar</html:submite>
<html:submite>Excluir</html:submite>

como ele vai saber em qual botao eu apertei?
valeu pela ajuda

e ai pessoal blz, estaria errado eu criar um atributo com o nome operacao, e nele dizer oq eu quero fazer se eh, cadastro, editar, excluir, ou tem outro modo pois nao estou conseguindo fazer isso.

valeu pela ajuda

andei dando uma olhada em alguns tutoriais e exemplos e pelo que vi fica assim:
struts-config.xml

	    <action
            path="/Funcionario"
            name="funcionarioForm"
            type="org.fun.action.funcionarioAction"
            input="funcionarioForm"
            scope="request"
            parameter="op"
            validate="true">
            
            <forward name="pesquisar" path="/pages/funcionario/pesquisar.jsp" />
            <forward name="cadastrar" path="/pages/funcionario/cadastrar.jsp" />
            <forward name="editar"    path="/pages/funcionario/editar.jsp"    />            
            <forward name="excluir"   path="/pages/funcionario/excluir.jsp"   />  
        </action>    
	</action-mappings>

action

public final class funcionarioAction extends Action {

	public ActionForward cadastrar (ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
	return (mapping.findForward("cadastrar"));
	}
	
	public ActionForward editar (ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
	return (mapping.findForward("editar"));
	}
	
	public ActionForward pesquisar (ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
	return (mapping.findForward("pesquisar"));
	}	
	
	public ActionForward excluir (ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response){
	return (mapping.findForward("excluir"));
}	
}

o problema eh que na pagina jsp eu nao intendo como vou fazer para informar qual o op que eu quero, se eh cadastrar, editar, excluir, pesquisar.

valeu pela ajuda pessoal

Você está fazendo todas as operações dentro de uma mesma action?
Se for isso vc vai precisar de um parametro mesmo.

Mas eu aconselho usar uma action para cada ação. Fica mais limpo.

Até

[quote=“jujo”]Você está fazendo todas as operações dentro de uma mesma action?
Se for isso vc vai precisar de um parametro mesmo.

Mas eu aconselho usar uma action para cada ação. Fica mais limpo.

Até[/quote]

Valeu mais a minha duvida eh o seguinte
Pensando em um sistema maior onde eu vou ter funcionário, cliente, fornecedor, etc, se eu for fazer uma action para cada operação vai ficar muito grande. Neste caso acho que ficaria meio inviável.

valeu pela ajuda

[quote=“rafaelhornung”][quote=“jujo”]Você está fazendo todas as operações dentro de uma mesma action?
Se for isso vc vai precisar de um parametro mesmo.

Mas eu aconselho usar uma action para cada ação. Fica mais limpo.

Até[/quote]

Valeu mais a minha duvida eh o seguinte
Pensando em um sistema maior onde eu vou ter funcionário, cliente, fornecedor, etc, se eu for fazer uma action para cada operação vai ficar muito grande. Neste caso acho que ficaria meio inviável.

valeu pela ajuda[/quote]

Não, eu não acho que fica inviável. Depois que seu sistema crescer, e começarem a aparecer as particularidades, vc ficará feliz por ter uma action para cada ação. Ou, você começará a ter aquelas actions enormes com mais de 50 linhas de código. =)