Factorizar varias actions realizables sin JavaScript: el LookupDispatchAction
Artículo por Club Developers · 29 August 2006
2218 vistas
Si el JAvaScript no está activado o no lo queremos usar, el DispatchAction no funcionará. Por suerte, Struts ofrece el LookupDispatchAction (org.apache.struts.actions.LookupDispatchAction) que permite sobrepasar esta limitación.
El LookupDispatchAction usa el mecanismo del [iurl=90&all=0&fs=1202#1237]DispatchAction[/iurl]. Las únicas diferencias están en la declaración del nombre del (o de los) botón(es) de acceptación que tienes que ser idénticos (atributo property de la etiqueta submit) al valor dado al atributo parameter en la deficnición de la action.
En el JSP, los botones se llamarán gracias a una clave del [iurl=90&all=0&fs=1196#1197]ResourceBundle[/iurl].
Los valores pasados estarán localizados y cambiarán en función del locale. Para mapear estos valores a un método en particular, añadiremos a la Action un método que se llamará en el momento de la aceptación:
Lo demás es idéntico a [iurl=90&all=0&fs=1196#1197]DispatchAction[/iurl].
El LookupDispatchAction usa el mecanismo del [iurl=90&all=0&fs=1202#1237]DispatchAction[/iurl]. Las únicas diferencias están en la declaración del nombre del (o de los) botón(es) de acceptación que tienes que ser idénticos (atributo property de la etiqueta submit) al valor dado al atributo parameter en la deficnición de la action.
xml
<action path="/cartManagement" type="app.management.CartAction" name="cartForm" scope="request" validate="true" parameter="miAction"/>
En el JSP, los botones se llamarán gracias a una clave del [iurl=90&all=0&fs=1196#1197]ResourceBundle[/iurl].
html4strict
<html:form action="/cartManagement"> <html:submit property="miAction"> <bean:message key="button.add"/> </html:submit> <html:submit property="miAction"> <bean:message key="button.delete"/> </html:submit> </html:form>
Los valores pasados estarán localizados y cambiarán en función del locale. Para mapear estos valores a un método en particular, añadiremos a la Action un método que se llamará en el momento de la aceptación:
java
Lo demás es idéntico a [iurl=90&all=0&fs=1196#1197]DispatchAction[/iurl].