Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.
Redireccionamiento directo
index.jsp<a href="enlace.action">Enlace</a>
WebContent/WEB-INF/web.xml<?xml version="1.0" encoding="utf-8" ?>
<web-app
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
src/struts.xml<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="com.pablomonteserin.action" extends="struts-default">
<action name="enlace">
<result>/pagina2.jsp</result>
</action>
</package>
</struts>
página2.jspLlegamos a ĺa página 2
Descarga (utilizaremos este ejercicio como base para los siguientes)
Redireccionamiento al método execute del action
index.jsp<a href="accion.action">Enlace a acción</a>
struts.xml<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com.pablomonteserin.action" extends="struts-default">
<action name="accion" class="com.pablomonteserin.action.SaludarAction">
<result>/pagina2.jsp</result>
</action>
</package>
</struts>
SaludarAction.java
public class SaludarAction extends ActionSupport {
private String resultado;
public String execute(){
resultado = "Hola Pablo";
return SUCCESS;
}
//getters y setters el atributo resultado
}
pagina2.jsp<%@ taglib prefix="s" uri="/struts-tags"%>
<h2><s:property value="resultado" /></h2>
Redireccionamiento a un método concreto del action
index.jsp
<a href="accion2.action">Enlace a acción</a>
struts.xml
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com.pablomonteserin.action" extends="struts-default">
<action name="accion2" class="com.pablomonteserin.action.SaludarAction" method="saludar">
<result>/pagina2.jsp</result>
</action>
</package>
</struts>
SaludarAction.java
public class SaludarAction extends ActionSupport {
private String resultado;
public String saludar(){
resultado = "Hola Juan";
return SUCCESS;
}
//getters y setters para el atributo resultado
}
pagina2.jsp
<%@ taglib prefix="s" uri="/struts-tags"%>
<h2><s:property value="resultado" /></h2>
Redireccionamiento a un método con paso de parámetros
Debemos definir estos parámetros como atributos globales dentro del action y hacer sus correspondientes getters y setters
La salida de un action es la entrada de otro
struts.xml
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com.pablomonteserin.action" extends="struts-default">
<action name="accionRedireccion" class="com.pablomonteserin.action.SaludarAction" method="saludar">
<result type="redirectAction">accion3</result>
</action>
</package>
</struts>
Notas:
Si usamos type=»chain», redireccionaremos a otro bean, pero cuando finalmente vayamos a un jsp, le llegará la información del penúltimo action ejecutado.