2.5. Factoring Your Application into Modules
Problem
You want to segregate portions of a web application into distinct subapplications, or modules, each with its own separate configuration.
Solution
Create a Struts configuration file for each module in addition to a
Struts configuration file for the default module. Then declare each
module using initialization parameters for the
ActionServlet in the web.xml,
as shown in Example 2-11.
Example 2-11. ActionServlet configuration for modules
<!-- Action Servlet Configuration -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>config/module1</param-name>
<param-value>/WEB-INF/struts-config-module1.xml</param-value>
</init-param>
<init-param>
<param-name>config/module2</param-name>
<param-value>/WEB-INF/struts-config-module2.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>Discussion
Struts 1.1 introduced the ability to define separately configurable sub-applications known as modules. Modules were incorporated into Struts to address the need for subdividing a web application into distinct, manageable portions. Each module is defined with its own configuration file(s). Every Struts application implicitly has a default module. The default module has no module name.
Tip
To provide backward compatibility with Struts ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access