The ConfigurationProvider interface describes the framework's configuration. By default, the framework loads its configurations via an XML document by using the StrutsXmlConfigurationProvider. The provider can be configured through a Dispatcher's DispatcherListener.

Example

 static {
   Dispatcher.addDispatcherListener(new DispatcherListener() {
     ....
     public void dispatcherInitialized(Dispatcher du) {
         ConfigurationManager confManager = du.getConfigurationManager();
         confManager.addConfigurationProvider( ... );
     }
     ....
   });
 }

Configuration provider

ConfigurationProvider is the basic piece of configuration used to tie all the options together in ConfigurationManager. There is few different implementations that are already used internally by the Apache Struts:

  • XmlConfigurationProvider - proprietary XWork implementation which are using xwork.xml file as source of configuration 
  • StrutsXmlConfigurationProvider - primary configuration provider, represents struts.xml and struts-plugin.xml files
  • PropertiesConfigurationProvider - used to load struts.properties
  • ServletContextAwareConfigurationProvider - marking interface allowing to inject ServletContext into provider

To inject your custom configuration provider use configProviders <init-param/> in web.xml

Back To: Architects Guide

  • No labels