- Learn
- Guida Apache Struts
- MappingDispatchAction e altre Action già pronte
MappingDispatchAction e altre Action già pronte
In questa lezione analizzeremo quelle action pronte all’uso, contenute nel package org.apache.struts.actions
, che non abbiamo ancora trattato, ma che vale la pena conoscere.
MappingDispatchAction
La MappingDispatchAction
è identica alla DispatchAction
, solo che in fase di mapping non si specifica più il parametro, ma direttamente il nome del metodo da invocare. La stessa azione sarà mappata con nomi differenti e sarà chiamata a seconda del metodo da invocare.
Riprendendo l’esempio fatto per la DispatchAction
nelle lezioni precedenti, dovremo modificare innanzitutto l’estensione della classe, che sarà org.apache.struts.action.MappingDispatchAction
. Nello struts-config scriveremo:
<action path="/saveMappingDispatchUserSubmit"
type=" fulvios.UserMappingDispatchAction"
parameter="save">
<forward name="success" path="/success.jsp" />
</action>
<action path="/removeMappingDispatchUserSubmit"
type="fulvios.UserMappingDispatchAction"
parameter="remove">
<forward name="success" path="/success.jsp" />
</action>
Quindi se vogliamo eseguire il metodo save
invocheremo l’azione con il nome /saveMappingDispatchUserSubmit
mentre per il metodo remove /removeMappingDispatchUserSubmit
.
BaseAction
La BaseAction
è molto simile ad una semplice Action
di Struts solo che mette a disposizione il seguente metodo execute()
:
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest req, HttpServletResponse res)
throws Exception {
preProcess(mapping,form,request,response);
if (isErrors(request)) {
return findFailure(mapping,form,request,response);
}
try {
executeLogic(mapping,form,request,response);
}
catch (Exception e) {
setException(request,e);
catchException(mapping,form,request,response);
}
finally {
postProcess(mapping,form,request,response);
}
if (isErrors(request)) {
return findFailure(mapping,form,request,response);
}
if ((isStruts_1_0()) && (isMessages(request))) {
saveErrors(request,getMessages(request,false));
}
}
Questo metodo mette a disposizione una parte dove si può implementare una logica di business da effettuare prima di eseguire il processo vero e proprio che sarà contenuto nel metodo executeLogic()
. Nel metodo è già compresa la gestione delle eccezioni generale.
IncludeAction
La classe IncludeAction
ha la stessa funzionalità della ForwardAction
solo che permette l’integrazione di servlet con l’applicazione Struts. Si configura allo stesso modo della ForwardAction
solo che l’attributo parameter
deve specificare il path di una servlet, mentre type
deve essere org.apache.struts.actions.IncludeAction
.
Se vuoi aggiornamenti su MappingDispatchAction e altre Action già pronte inserisci la tua email nel box qui sotto:
Compilando il presente form acconsento a ricevere le informazioni relative ai servizi di cui alla presente pagina ai sensi dell'informativa sulla privacy.
La tua iscrizione è andata a buon fine. Se vuoi ricevere informazioni personalizzate compila anche i seguenti campi opzionali:
Compilando il presente form acconsento a ricevere le informazioni relative ai servizi di cui alla presente pagina ai sensi dell'informativa sulla privacy.
I Video di HTML.it
AngularJS Best Practices e Enterprise style-guide
Pianificare, capire i vincoli, capire le scelte tecniche, produrre documentazione e schemi per un buon lavoro di team nei progetti […]