Iniciante em Struts

Olá a todos,

estou começando a utilizar o Struts agora e gostaria de saber se é possível, e como, é claro, implementar o seguinte:

Na minha página inicial tem um link para a a action /cadastoAdmin.do.
De início esse action teria que redirecionar para a página principal do cadastro, onde provavelmente, estarão listados os registros cadastrados, e a partir daí o usuário teria as opções de cadastrar um novo registro, ou editar um selecionado.
No formulário de cadastro, o usuário teria a opção de salvar o registro, ou em caso de edição, poderá também excluí-lo.

Gostaria de uma forma de eu tratar tudo isso em apenas uma classe Java, e não ter de criar uma classe para cada action (list, add, edit, delete), porque imaginem, quatro actions para cada cadastro!

Estive pensando em algo do tipo:
/cadastroAdmin.do -> mostra registro cadastrados
/cadastroAdmin.do?action=save -> salva os dados
/cadastroAdmin.do?action=edit -> edita um registro
/cadastroAdmin.do?action=add -> mostra formulário em branco
/cadastroAdmin.do?action=delete -> exclui o registro ativo

Agradeço opiniões…

Isso é totalmente possível sim.

No seu struts-config.xml

<action-mappings> <action path="/seuCadastro" name="seuForm" type="abc.SuaClasseAction" parameter="acao" input="pagina.jsp" /> </action-mappings>

Na URL:

seuCadastro.do?acao=cadastrar&outros_parametros

E no seu Action, deve conter um método de nome exatamente igual ao valor passado ao parâmetro “acao”.

obrigado danieldestro,

mas e a assinatura do método? é igual ao metódo execute?
E quanto à classe base? dever ser Action ou DispatchAction?

Outra pergunta: Alguém conhece o livro Struts em Ação ? Vale a pena comprá-lo?

de nada…

isso, igual ao execute

DispatchAction

Creio que sim, porem nunca o usei!

O livro é bem legal sim, e foi escrito pelo Ted Husted, um dos criadores do Struts. Quanto a valer a pena, na internet tem MUITO material, dá pra aprender tranquilamente, e relativamente bem. Porém, se vc gosta da comodidade de ter o livro em mãos (pra levar pro banheiro, por exemplo :twisted: ), vale a pena. :wink:

[]'s