viernes, 23 de marzo de 2007

Struts, forward con parámetros

Desde los inicios de los tiempos, struts ha tenido un problema en los forward.
En la deficinición del forward, dentros del struts-config.xml, no se podían indicar parámetros.
El problema se complicaba cuando estos parámetros son dinámicos (que es la mayoría de los casos).

Solución.

A partir de la versión 1.2.7 parece que se ha arregado el problema.
Existe una clase nueva que herada del ActionForward.
Se trata de ActionRedirect.
En el javadoc se puede ver cómo funciona, pero baśicamente:
  • Declaramos el forward en el struts-config.xml, sin parámetros.




  • En la implementación de nuestro Action, obtenemos el ActionForward que hemos declarado anteriormente.
    ForwardConfig forwardConfig = mapping.findForward("elForward");
  • A partir del ActionForward anterior, creamos el ActionRedirect, pasándole los parámetros que necesitemos.
    ActionRedirect redirect = new ActionRedirect(forwardConfig);
    redirect.addParameter("param1","value1");
    redirect.addParameter("param2","2");
    redirect.addParameter("param3","3.0");
    return redirect;


Angel Cervera
Publicar un comentario