What is IncludeAction ?
This is an Action that includes the context-relative URI specified by the parameter property of our associated ActionMapping. This can be used to integrate Struts with other business logic components that are implemented as servlets or JSP pages, but still take advantage of the Struts controller servlet's functionality such as processing of form beans. To configure the use of this Action in our struts-config.xml file, create an entry like this:
<action path="/saveDetail" type="org.apache.struts.actions.IncludeAction" name="detailForm" scope="request" input="/detail.jsp" parameter="/path to processing servlet">
which will include the context-relative URI specified by the parameter attribute. This shorter form uses the include attribute:
<action path="/legacy" include="/legacy/roar" input="/form/userForm2.jsp" name="userForm" parameter="/legacy/roar" validate="true" scope="request"/>
The difference between the IncludeAction and the ForwardAction is that we need to use the IncludeAction only if the action is going to be included by another action or JSP. Therefore, if we have code in our JSP that looks like this:
<jsp:include page="/someWebApp/ someModule/someAction.do " />
The action could not use a ForwardAction because it would forward control to the new action rather than including its output within the output of the JSP-or throw a nasty IllegalStateException if the output buffer was already committed.