ForwardAction
ForwardAction is the one of the most frequently used built-in Action classes.
Most of the times you will perform some processing when you navigate from one page to another. In Struts,
this processing is encapsulated in the Action instances. There are times however
when all you want to do is navigate from one page to another without performing
any processing.Suppose you want to go from jsp1.jsp to jsp2.jsp in your Struts
application. The easy way of achieving this is to add a hyperlink in jsp1.jsp as
follows:
<a href="jsp2.jsp">Go to JSP 2</a>
or even better, as follows:
<html:link page="/jsp2.jsp"> Go to JSP 2</html:link>
Struts provides a built-in Action class called ForwardAction to address this
issue. With ForwardAction, the Struts Controller is still in the loop while
navigating from jsp1.jsp to jsp2.jsp.
There are two steps involved in using the
ForwardAction.
Step 1. First, declare the jsp1 hyperlink that takes you to jsp2 as follows:
|
<html:link page="/gotojsp2.do">Go to JSP 2</html:link>
|
Step 2. Add action mapping in the struts-config.xml file:
Add the following action mapping in the
struts-config.xml file:
<action path="/gotojsp2"
parameter="/jsp2.jsp"
type="org.apache.struts.actions.ForwardAction" /> |
The jsp1.jsp hyperlink now points to "/gotojsp2.do" instead of
"jsp2.jsp". This ensures that the controller is still in the loop. The three
attributes shown above are mandatory in a ForwardAction. The type attribute
is always org.apache.struts.actions.ForwardAction instead of a
custom Action of yours. The path attribute identifies the URL path, as any other
ActionMapping. The parameter attribute in the above definition is the URL for
the next JSP.In the above ActionMapping you might have noticed there is no ActionForm.