Yes, there are two complementary approaches. We can include other
struts.xml file -format files from a bootstrap
struts.xml file, or we can package a
struts.xml files in a JAR. Or both.
struts.xml files will have one or more include elements:
<struts> <include file="struts-default.xml"/> <include file="config-browser.xml"/> <package name="default" extends="struts-default"> .... </package> <include file="other.xml"/> </struts>
include element tells the framework to load the
struts-default.xml, which it wil find in the
struts2.jar file. The
struts-default.xml file defines the "standard" interceptor and result definitions.
You can put your own See the
<include> element documentation.
You can use
<include> elements in your
struts.xml interchangeably with
<package> elements. They The configuration objects will be loaded in the order of appearance. The framework reads the configuration from top to bottom and adds objects as they are referenced.
A "module" can be added to an application by placing a
struts.xml and related classes into a JAR on the classpath. FreeMarker and Velocity templates can also be provided by JAR, making it possible to distribution a module in a single, self-contained JAR that is automatically configured on startup.