Date: 2004-01-10T11:43:04
Editor: 160.33.82.119 <>
Wiki: Apache Avalon Wiki
Page: AvalonFortressFAQ/ExtendingTheFortressConfiguration
URL:
http://wiki.apache.org/avalon/AvalonFortressFAQ/ExtendingTheFortressConfiguration
fixed formatting -farra
Change Log:
------------------------------------------------------------------------------
@@ -6,32 +6,32 @@
See example code used in your servlets init method:
{{{
-{{{ public void init(final ServletConfig pServletConfig) throws ServletException
}}}
-{{{ { }}}
-{{{ ... }}}
-{{{ final DefaultContext lContext = }}}
-{{{ new
DefaultContext(initializeMap(),FortressConfig.createDefaultConfig()); }}}
-{{{ lContext.makeReadOnly(); }}}
-{{{ final FortressConfig lConfig = new FortressConfig(lContext); }}}
-{{{ ... }}}
-{{{ } }}}
-{{{ private Map initializeMap() }}}
-{{{ { }}}
-{{{ Map lMap = new Hashtable(); }}}
-{{{ lMap.put(CACHE_KEY, getServletConfig.getInitParameter("enable-cache")); }}}
-{{{ return lMap; }}}
-{{{ } }}}
-{{{ private static String CACHE_KEY = "app.cache"; }}}
- }}}
+ public void init(final ServletConfig pServletConfig) throws ServletException
+ {
+ ...
+ final DefaultContext lContext =
+ new DefaultContext(initializeMap(),FortressConfig.createDefaultConfig());
+ lContext.makeReadOnly();
+ final FortressConfig lConfig = new FortressConfig(lContext);
+ ...
+ }
+ private Map initializeMap()
+ {
+ Map lMap = new Hashtable();
+ lMap.put(CACHE_KEY, getServletConfig.getInitParameter("enable-cache"));
+ return lMap;
+ }
+ private static String CACHE_KEY = "app.cache";
+}}}
You might add also additional services provided by the servlet context istelf i.e. a
servive for mime types. Assuming you have an interface for this:
{{{
public interface MimeTypeService
{
-{{{ public static final String ROLE = MimeTypeService.class.getName(); }}}
-{{{ /** Request a mime type for a file name. */ }}}
-{{{ public String get(final String pFilename); }}}
+ public static final String ROLE = MimeTypeService.class.getName();
+ /** Request a mime type for a file name. */
+ public String get(final String pFilename);
}
}}}
@@ -40,31 +40,31 @@
{{{
public class ServletMimeTypeService implements MimeTypeService
{
-{{{ private final ServletContext m_ServletContext; }}}
-{{{ public ServletMimeTypeService(final ServletContext pServletContext) }}}
-{{{ { }}}
-{{{ m_ServletContext = pServletContext; }}}
-{{{ } }}}
-{{{ public String get(final String pFilename) }}}
-{{{ { }}}
-{{{ return m_ServletContext.getMimeType(pFilename); }}}
-{{{ } }}}
+ private final ServletContext m_ServletContext;
+ public ServletMimeTypeService(final ServletContext pServletContext)
+ {
+ m_ServletContext = pServletContext;
+ }
+ public String get(final String pFilename)
+ {
+ return m_ServletContext.getMimeType(pFilename);
+ }
}
}}}
you can make this service available for your Fortress container by using an own
[http://avalon.apache.org/api/org/apache/avalon/framework/service/DefaultServiceManager.html
DefaultServiceManager] and put this into the
[http://avalon.apache.org/api/org/apache/avalon/fortress/util/FortressConfig.html
FortressConfig] during the servlet init:
{{{
-{{{ public void init(final ServletConfig pServletConfig) throws ServletException
}}}
-{{{ { }}}
-{{{ ... }}}
-{{{ final ServletContext lServletContext = pServletConfig.getServletContext();
}}}
-{{{ final DefaultServiceManager lServiceManager = new DefaultServiceManager();
}}}
-{{{ lServiceManager.put(MimeTypeService.ROLE, new
ServletMimeTypeService(lServletContext); }}}
-{{{ final FortressConfig lConfig = new FortressConfig(); }}}
-{{{ lConfig.setServiceManager(lServiceManager); }}}
-{{{ ... }}}
-{{{ } }}}
+ public void init(final ServletConfig pServletConfig) throws ServletException
+ {
+ ...
+ final ServletContext lServletContext = pServletConfig.getServletContext();
+ final DefaultServiceManager lServiceManager = new DefaultServiceManager();
+ lServiceManager.put(MimeTypeService.ROLE, new
ServletMimeTypeService(lServletContext);
+ final FortressConfig lConfig = new FortressConfig();
+ lConfig.setServiceManager(lServiceManager);
+ ...
+ }
}}}
Naturally you can combine this with your own context described above.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]