Struts - Desenvolvendo um ActionMapping

Pessoal,

Alguém sabe como criar um mapeamento no struts? Tipo pra poder a gente usar no struts-config.xml de maneira que eu possa criar um novo atributo na tag , passar um valor pra ele e do action fazer mapping.getMeuAtributoDoStrutsConfig ?

Algo como o DispatchAction faz… a tag do mapeamento do DispatchAction no struts-config tem um atributo parameter, que o DispatchAction usa para saber qual metodo do action invocar.

Pessoal, é mais ou menos assim o que quero saber:

  • no Struts nós podemos criar nossos próprios Forms, escrevendo a classe do form que herda de ActionForm
  • podemos fazer nossos próprios Actions, escrevendo a classe do action que herda de Action

o struts vai chamar o método execute da Action, o qual tem a seguinte assinatura:

public ActionForward execute(
		ActionMapping mapping, 
		ActionForm form,
		HttpServletRequest request, 
		HttpServletResponse response) throws Exception;

O que eu gostaria de saber é se tem como a gente criar nosso próprio ActionMapping, talvez escrevendo uma classe que herda de ActionMapping . Para poder, nos Actions que eu escrever receber uma instância do ActionMapping que eu criei.

Estou precisando disso para poder passar algumas informações para o Action através do mapeamento configurado no struts-config. Por exemplo, como estou usando atualmente (usando o ActionMapping padrão):

<action
	attribute="form"
	parameter="method"
	path="/basico_cargo"
	scope="request"
	type="br.com.viamentor.sicof.struts.action.basico.CargoAction"
	validate="false">
	<forward name="lista" path="/jsp/basico/CargoLista.jsp" />
	<forward name="carrega" path="/jsp/basico/Cargo.jsp" />
</action>

Todos esses valores podemos obter através do objeto ActionMapping que recebemos no método execute. Portanto, gostaria de adicionar uns atributos nessa configuração para poder enriquecer a arquitetura daqui da empresa, informando algumas informações declarativamente, através do struts-config.

Alguém sabe se é possível ou tem alguma idéia?

[]'s

dê uma olhada neste exemplo: http://www.onjava.com/pub/a/onjava/2004/02/18/strutssecurity.html?page=last&x-order=date

abraços

Melhorando o link dado acima, vc tb pode editar o TLD do struts para receber parametros especializados (como a sua classe de actionMapping) e colocar mais parametros na propria tac do struts… eu já fiz isso a algum tempo e ficou legal…