source: nutchez-0.1/tomcat/webapps/docs/funcspecs/printer/fs-admin-objects.html @ 261

Last change on this file since 261 was 66, checked in by waue, 16 years ago

NutchEz - an easy way to nutch

File size: 24.7 KB
RevLine 
[66]1<html><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Catalina Functional Specifications - Administrative Apps - Administered Objects</title><meta value="Craig McClanahan" name="author"><meta value="craigmcc@apache.org" name="email"></head><body vlink="#525D76" alink="#525D76" link="#525D76" text="#000000" bgcolor="#ffffff"><table cellspacing="0" width="100%" border="0"><!--PAGE HEADER--><tr><td><!--PROJECT LOGO--><a href="http://tomcat.apache.org/"><img border="0" alt="
2      Catalina Functional Specifications
3    " align="right" src="../../../images/tomcat.gif"></a></td><td><font face="arial,helvetica,sanserif"><h1>Apache Tomcat 6.0</h1></font></td><td><!--APACHE LOGO--><a href="http://www.apache.org/"><img border="0" alt="Apache Logo" align="right" src="../../../images/asf-logo.gif"></a></td></tr></table><table cellspacing="4" width="100%" border="0"><!--HEADER SEPARATOR--><tr><td colspan="2"><hr size="1" noshade></td></tr><tr><!--RIGHT SIDE MAIN BODY--><td align="left" valign="top" width="80%"><table cellspacing="4" width="100%" border="0"><tr><td valign="top" align="left"><h1>Catalina Functional Specifications</h1><h2>Administrative Apps - Administered Objects</h2></td><td nowrap="true" valign="top" align="right"><img border="0" hspace="0" vspace="0" height="1" width="1" src="../../../images/void.gif"></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Administered Objects Overview"><strong>Administered Objects Overview</strong></a></font></td></tr><tr><td><blockquote>
4
5<p>This document defines the <em>Administered Objects</em> that represent
6the internal architectural components of the Catalina servlet container.
7Associated with each is a set of <a href="fs-admin-opers.html">Supported
8Operations</a> that can be performed when the administrative application is
9"focused" on a particular configurable object.</p>
10
11<p>The following Administered Objects are defined:</p>
12<ul>
13<li><a href="#Access Logger">Access Logger</a></li>
14<li><a href="#Connector">Connector</a></li>
15<li><a href="#Context">Context</a></li>
16<li><a href="#Default Context">Default Context</a></li>
17<li><a href="#Default Deployment Descriptor">Default Deployment Descriptor</a></li>
18<li><a href="#Engine">Engine</a></li>
19<li><a href="#Environment Entry">Environment Entry</a></li>
20<li><a href="#Host">Host</a></li>
21<li><a href="#JDBC Resource">JDBC Resource</a></li>
22<li><a href="#Loader">Loader</a></li>
23<li><a href="#Manager">Manager</a></li>
24<li><a href="#Realm">Realm</a></li>
25<li><a href="#Request Filter">Request Filter</a></li>
26<li><a href="#Server">Server</a></li>
27<li><a href="#Service">Service</a></li>
28</ul>
29
30</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Access Logger"><strong>Access Logger</strong></a></font></td></tr><tr><td><blockquote>
31
32  <p>An <em>Access Logger</em> is an optional <code>Valve</code> that can
33  create request access logs in the same formats as those provided by
34  web servers.  Such access logs are useful input to hit count and user
35  access tracking analysis programs.  An Access Logger can be attached to
36  an <em>Engine</em>, a <em>Host</em>, a <em>Context</em>, or a <em>Default
37  Context</em>.</p>
38
39  <p>The standard component implementing an <em>Access Logger</em> is
40  <code>org.apache.catalina.valves.AccessLogValve</code>.  It supports the
41  following configurable properties:</p>
42  <ul>
43  <li><code>debug</code> - Debugging detail level.  [0]</li>
44  <li><code>directory</code> - Absolute or relative (to $CATALINA_BASE) path
45      of the directory into which access log files are created.
46      [logs].</li>
47  <li><code>pattern</code> - Pattern string defining the fields to be
48      included in the access log output, or "common" for the standard
49      access log pattern.  See
50      <code>org.apache.catalina.valves.AccessLogValve</code> for more
51      information.  [common]</li>
52  <li><code>prefix</code> - Prefix added to the beginning of each log file
53      name created by this access logger.</li>
54  <li><code>resolveHosts</code> - Should IP addresses be resolved to host
55      names in the log?  [false]</li>
56  <li><code>suffix</code> - Suffix added to the end of each log file name
57      created by this access logger.</li>
58  </ul>
59
60</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Connector"><strong>Connector</strong></a></font></td></tr><tr><td><blockquote>
61
62  <p>A <em>Connector</em> is the representation of a communications endpoint
63  by which requests are received from (and responses returned to) a Tomcat
64  client.  The administrative applications shall support those connectors
65  that are commonly utilized in Tomcat installations, as described in detail
66  below.</p>
67
68  <p>For standalone use, the standard connector supporting the HTTP/1.1
69  protocol is <code>org.apache.catalina.connectors.http.HttpConnector</code>.
70  It supports the following configurable properties:</p>
71  <ul>
72  <li><code>acceptCount</code> - The maximum queue length of incoming
73      connections that have not yet been accepted.  [10]</li>
74  <li><code>address</code> - For servers with more than one IP address, the
75      address upon which this connector should listen.  [All Addresses]</li>
76  <li><code>bufferSize</code> - Default input buffer size (in bytes) for
77      requests created by this Connector.  [2048]</li>
78  <li><code>debug</code> - Debugging detail level.  [0]</li>
79  <li><code>enableLookups</code> - Should we perform DNS lookups on remote
80      IP addresses when <code>request.getRemoteHost()</code> is called?
81      [true]</li>
82  <li><code>maxProcessors</code> - The maximum number of processor threads
83      supported by this connector.  [20]</li>
84  <li><code>minProcessors</code> - The minimum number of processor threads
85      to be created at container startup.  [5]</li>
86  <li><code>port</code> - TCP/IP port number on which this Connector should
87      listen for incoming requests. [8080]</li>
88  <li><code>proxyName</code> - Host name to be returned when an application
89      calls <code>request.getServerName()</code>.  [Value of Host: header]</li>
90  <li><code>proxyPort</code> - Port number to be returned when an application
91      calls <code>request.getServerPort()</code>.  [Same as <code>port</code>]
92      </li>
93  </ul>
94
95</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Context"><strong>Context</strong></a></font></td></tr><tr><td><blockquote>
96
97  <p>A <em>Context</em> is the representation of an individual web application,
98  which is associated with a corresponding <em>Host</em>.  Note that the
99  administrable properties of a <em>Context</em> do <strong>not</strong>
100  include any settings from inside the web application deployment descriptor
101  for that application.</p>
102
103  <p>The standard component implementing a <em>Context</em> is
104  <code>org.apache.catalina.core.StandardContext</code>.  It supports the
105  following configurable properties:</p>
106  <ul>
107  <li><code>cookies</code> - Should be use cookies for session identifier
108      communication?  [true]</li>
109  <li><code>crossContext</code> - Should calls to
110      <code>ServletContext.getServletContext()</code> return the actual
111      context responsible for the specified path?  [false]</li>
112  <li><code>debug</code> - Debugging detail level.  [0]</li>
113  <li><code>docBase</code> - The absolute or relative (to the
114      <code>appBase</code> of our owning <em>Host</em>) pathname of a
115      directory containing an unpacked web application, or of a web
116      application archive (WAR) file.</li>
117  <li><code>override</code> - Should settings in this <em>Context</em>
118      override corresponding settings in the <em>Default Context</em>?
119      [false]</li>
120  <li><code>path</code> - Context path for this web application, or an empty
121      string for the root application of a <em>Host</em>.  [Inferred from
122      directory or WAR file name]</li>
123  <li><code>reloadable</code> - Should Tomcat monitor classes in the
124      <code>/WEB-INF/classes</code> directory for changes, and reload the
125      application if they occur?  [false]</li>
126  <li><code>useNaming</code> - Should Tomcat provide a JNDI naming context,
127      containing preconfigured entries and resources, corresponding to the
128      requirements of the Java2 Enterprise Edition specification?  [true]</li>
129  <li><code>workDir</code> - Absolute pathname of a scratch directory that is
130      provided to this web application.  [Automatically assigned relative to
131      $CATALINA_BASE/work]</li>
132  </ul>
133
134  <p>Each <em>Context</em> is owned by a parent <em>Host</em>, and is
135  associated with:</p>
136  <ul>
137  <li>An optional <em>Access Logger</em> that logs all requests processed
138      by this web application.</li>
139  <li>Zero or more <em>Environment Entries</em> representing environment
140      entries for the JNDI naming context associated with a web
141      application.</li>
142  <li>Zero or more <em>JDBC Resources</em> representing database connection
143      pools associated with a web application.</li>
144  <li>A <em>Loader</em> representing the web application class loader used
145      by this web application.</li>
146  <li>A <em>Manager</em> representing the session manager used by this
147      web application.</li>
148  <li>An optional <em>Realm</em> used to provide authentication and access
149      control information for this web application.</li>
150  <li>Zero or more <em>Request Filters</em> used to limit access to this
151      web application based on remote host name or IP address.</li>
152  </ul>
153
154</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Default Context"><strong>Default Context</strong></a></font></td></tr><tr><td><blockquote>
155
156  <p>A <em>Default Context</em> represents a subset of the configurable
157  properties of a <em>Context</em>, and is used to set defaults for those
158  properties when web applications are automatically deployed.  A <em>Default
159  Context</em> object can be associated with an <em>Engine</em> or a
160  <em>Host</em>.  The following configurable properties are supported:</p>
161  <ul>
162  <li><code>cookies</code> - Should be use cookies for session identifier
163      communication?  [true]</li>
164  <li><code>crossContext</code> - Should calls to
165      <code>ServletContext.getServletContext()</code> return the actual
166      context responsible for the specified path?  [false]</li>
167  <li><code>reloadable</code> - Should Tomcat monitor classes in the
168      <code>/WEB-INF/classes</code> directory for changes, and reload the
169      application if they occur?  [false]</li>
170  <li><code>useNaming</code> - Should Tomcat provide a JNDI naming context,
171      containing preconfigured entries and resources, corresponding to the
172      requirements of the Java2 Enterprise Edition specification?  [true]</li>
173  </ul>
174
175  <p>Each <em>Default Context</em> is owned by a parent <em>Engine</em> or
176  <em>Host</em>, and is associated with:</p>
177  <ul>
178  <li>Zero or more <em>Environment Entries</em> representing environment
179      entries for the JNDI naming context associated with a web
180      application.</li>
181  <li>Zero or more <em>JDBC Resources</em> representing database connection
182      pools associated with a web application.</li>
183  <li>An optional <em>Loader</em> representing default configuration
184      properties for the Loader component of deployed web applications.</li>
185  <li>An optional <em>Manager</em> representing default configuration
186      properties for the Manager component fo deployed web applications.</li>
187  </ul>
188
189</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Default Deployment Descriptor"><strong>Default Deployment Descriptor</strong></a></font></td></tr><tr><td><blockquote>
190
191  <p>Default web application characteristics are configured in a special
192  deployment descriptor named <code>$CATALINA_BASE/conf/web.xml</code>.  This
193  section describes the configurable components that may be stored there.</p>
194
195  <p><strong>FIXME</strong> - Complete the description of default servlets,
196  default mappings, default MIME types, and so on.</p>
197
198</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Engine"><strong>Engine</strong></a></font></td></tr><tr><td><blockquote>
199
200  <p>An <em>Engine</em> is the representation of the entire Catalina
201  servlet container, and processes all requests for all of the associated
202  virtual hosts and web applications.</p>
203
204  <p>The standard component implementing an <em>Engine</em> is
205  <code>org.apache.catalina.core.StandardEngine</code>.  It supports the
206  following configurable properties:</p>
207  <ul>
208  <li><code>debug</code> - Debugging detail level.  [0]</li>
209  <li><code>defaultHost</code> - Name of the <em>Host</em> to which requests
210      will be directed if the requested host is unknown.  [localhost]</li>
211  <li><code>name</code> - Logical name of this engine. [Tomcat Stand-Alone]
212      </li>
213  </ul>
214
215  <p>Each <em>Engine</em> is owned by a parent <em>Service</em>, and is
216  associated with:</p>
217  <ul>
218  <li>An optional <em>Access Logger</em> that logs all requests processed
219      by the entire container.</li>
220  <li>A <em>Default Context</em>, representing default properties of a
221      <em>Context</em> for automatically deployed applications for all
222      associated <em>Hosts</em> (unless overridden by a subordinate
223      component).</li>
224  <li>One or more <em>Hosts</em> representing individual virtual hosts
225      supported by this container.</li>
226  <li>A <em>Realm</em> used to provide authentication and access control
227      information for all virtual hosts and web applications (unless
228      overridden by a subordinate component).</li>
229  <li>Zero or more <em>Request Filters</em> used to limit access to the
230      entire container based on remote host name or IP address.</li>
231  </ul>
232
233</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Environment Entry"><strong>Environment Entry</strong></a></font></td></tr><tr><td><blockquote>
234
235  <p>An <em>Environment Entry</em> is the representation of a
236  <code>&lt;env-entry&gt;</code> element from a web application deployment
237  descriptor.  It will cause the creation of a corresponding entry in the
238  JNDI naming context provided to the corresponding <em>Context</em>.  The
239  following configurable properties are supported:</p>
240  <ul>
241  <li><code>description</code> - Description of this environment entry.</li>
242  <li><code>name</code> - Environment entry name (relative to the
243      <code>java:comp/env</code> context)</li>
244  <li><code>type</code> - Environment entry type (must be one of the fully
245      qualified Java classes listed in the servlet spec).</li>
246  <li><code>value</code> - Environment entry value (must be convertible from
247      String to the specified <code>type</code>.</li>
248  </ul>
249
250</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Host"><strong>Host</strong></a></font></td></tr><tr><td><blockquote>
251
252  <p>A <em>Host</em> is the representation of an individual virtual host,
253  which has a unique set of associated web applications.</p>
254
255  <p>The standard component implementing a <em>Host</em> is
256  <code>org.apache.catalina.core.StandardHost</code>.  It supports the
257  following configurable properties:</p>
258  <ul>
259  <li><code>aliases</code> - Zero or more DNS names that are also associated
260      with this host (for example, a particular host might be named
261      <code>www.mycompany.com</code> with an alias <code>company.com</code>).
262      </li>
263  <li><code>appBase</code> - Absolute or relative (to $CATALINA_BASE) path
264      to a directory from which web applications will be automatically
265      deployed.</li>
266  <li><code>debug</code> - Debugging detail level.  [0]</li>
267  <li><code>name</code> - DNS Name of the virtual host represented by this
268      object.</li>
269  <li><code>unpackWARs</code> - Should web application archive files
270      deployed by this virtual host be unpacked first?  [true]</li>
271  </ul>
272
273  <p>Each <em>Host</em> is owned by a parent <em>Engine</em>, and is
274  associated with:</p>
275  <ul>
276  <li>An optional <em>Access Logger</em> that logs all requests processed
277      by this virtual host.</li>
278  <li>One or more <em>Contexts</em> representing the web applications
279      operating on this <em>Host</em>.</li>
280  <li>A <em>Default Context</em> representing default <em>Context</em>
281      properties for web applications that are automatically deployed
282      by this <em>Host</em>.</li>
283  <li>A optional <em>Realm</em> used to provide authentication and access
284      control information for all web applications associated with this
285      virtual host (unless overridden by a subordinate component).</li>
286  </ul>
287
288  <p><strong>FIXME</strong> - Should we support configuration of the
289  User Web Applications functionality?</p>
290
291</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="JDBC Resource"><strong>JDBC Resource</strong></a></font></td></tr><tr><td><blockquote>
292
293  <p>A <em>JDBC Resources</em> represents a database connection pool (i.e.
294  an implementation of <code>javax.sql.DataSource</code> that will be
295  configured and made available in the JNDI naming context associated with
296  a web application.</p>
297
298  <p><strong>FIXME</strong> - properties of this administered object</p>
299
300</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Loader"><strong>Loader</strong></a></font></td></tr><tr><td><blockquote>
301
302  <p>A <em>Loader</em> represents a web application class loader that will
303  be utilized to provide class loading services for a particular
304  <em>Context</em>.</p>
305
306  <p>The standard component implementing a <em>Loader</em> is
307  <code>org.apache.catalina.loader.StandardLoader</code>.  It supports
308  the following configurable properties:</p>
309  <ul>
310  <li><code>checkInterval</code> - Number of seconds between checks for
311      modified classes, if automatic reloading is enabled.  [15]</li>
312  <li><code>debug</code> - Debugging detail level.  [0]</li>
313  <li><code>reloadable</code> - Should this class loader check for modified
314      classes and initiate automatic reloads?  [Set automatically from the
315      <code>reloadable</code> property of the corresponding <em>Context</em>]
316      </li>
317  </ul>
318
319  <p>Each <em>Loader</em> is owned by a parent <em>Context</em>.</p>
320
321</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Manager"><strong>Manager</strong></a></font></td></tr><tr><td><blockquote>
322
323  <p>A <em>Manager</em> represents a session manager that will be associated
324  with a particular web application.  <strong>FIXME</strong> - Add support
325  for advanced session managers and their associated Stores.</p>
326
327  <p>The standard component implementing a <em>Manager</em> is
328  <code>org.apache.catalina.session.StandardManager</code>.  It supports
329  the following configurable properties:</p>
330  <ul>
331  <li><code>checkInterval</code> - Number of seconds between checks for
332      expired sessions.  [60]</li>
333  <li><code>debug</code> - Debugging detail level.  [0]</li>
334  <li><code>entropy</code> - String initialization parameter used to increase
335      the entropy (initial randomness) of the random number generator used to
336      create session identifiers.  [Inferred from engine, host, and context]
337      </li>
338  <li><code>maxActiveSessions</code> - The maximum number of active sessions
339      that are allowed, or -1 for no limit.  [-1]</li>
340  </ul>
341
342  <p>Each <em>Manager</em> is owned by a parent <em>Context</em>.</p>
343
344</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Realm"><strong>Realm</strong></a></font></td></tr><tr><td><blockquote>
345
346  <p>A <em>Realm</em> represents a "database" of information about authorized
347  users, their passwords, and the security roles assigned to them.  This will
348  be used by the container in the implementation of container-managed security
349  in accordance with the Servlet Specification.  Several alternative
350  implementations are supported.</p>
351
352  <p><code>org.apache.catalina.realm.MemoryRealm</code> initializes its user
353  information from a simple XML file at startup time.  If changes are made
354  to the information in this file, the corresponding web applications using
355  it must be restarted for the changes to take effect.  It supports the
356  following configurable properties:</p>
357  <ul>
358  <li><code>debug</code> - Debugging detail level.  [0]</li>
359  <li><code>pathname</code> - Absolute or relative (to $CATALINA_BASE) path to
360      the XML file containing our user information.  [conf/tomcat-users.xml]
361      </li>
362  </ul>
363
364  <p><code>org.apache.catalina.realm.JDBCRealm</code> uses a relational
365  database (accessed via JDBC APIs) to contain the user information.  Changes
366  in the contents of this database take effect immediately; however, the roles
367  assigned to a particular user are calculated only when the user initially
368  logs on (and not per request).  The following configurable properties
369  are supported:</p>
370  <ul>
371  <li><code>connectionName</code> - Database username to use when establishing
372      a JDBC connection.</li>
373  <li><code>connectionPassword</code> - Database password to use when
374      establishing a JDBC connection.</li>
375  <li><code>connectionURL</code> - Connection URL to use when establishing
376      a JDBC connection.</li>
377  <li><code>debug</code> - Debugging detail level.  [0]</li>
378  <li><code>digest</code> - Name of the <code>MessageDigest</code> algorithm
379      used to encode passwords in the database, or a zero-length string for
380      no encoding.  [Zero-length String]</li>
381  <li><code>driverName</code> - Fully qualified Java class name of the JDBC
382      driver to be utilized.</li>
383  <li><code>roleNameCol</code> - Name of the column, in the User Roles table,
384      which contains the role name.</li>
385  <li><code>userCredCol</code> - Name of the column, in the Users table,
386      which contains the password (encrypted or unencrypted).</li>
387  <li><code>userNameCol</code> - Name of the column, in both the Users and
388      User Roles tables, that contains the username.</li>
389  <li><code>userRoleTable</code> - Name of the User Roles table, which contains
390      one row per security role assigned to a particular user.  This table must
391      contain the columns specified by the <code>userNameCol</code> and
392      <code>roleNameCol</code> properties.</li>
393  <li><code>userTable</code> - Name of the Users table, which contains one row
394      per authorized user.  This table must contain the columns specified by
395      the <code>userNameCol</code> and <code>userCredCol</code> properties.
396      </li>
397  </ul>
398
399  <p><strong>FIXME</strong> - Should we provide mechanisms to edit the contents
400  of a "tomcat-users.xml" file through the admin applications?</p>
401
402  <p>Each <em>Realm</em> is owned by a parent <em>Engine</em>, <em>Host</em>,
403  or <em>Context</em>.</p>
404
405</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Request Filter"><strong>Request Filter</strong></a></font></td></tr><tr><td><blockquote>
406
407  <p><strong>FIXME</strong> - complete this entry</p>
408
409</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Server"><strong>Server</strong></a></font></td></tr><tr><td><blockquote>
410
411  <p><strong>FIXME</strong> - complete this entry</p>
412
413</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Service"><strong>Service</strong></a></font></td></tr><tr><td><blockquote>
414
415  <p><strong>FIXME</strong> - complete this entry</p>
416
417</blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td colspan="2"><hr size="1" noshade></td></tr><!--PAGE FOOTER--><tr><td colspan="2"><div align="center"><font size="-1" color="#525D76"><em>
418        Copyright &copy; 1999-2008, Apache Software Foundation
419        </em></font></div></td></tr></table></body></html>
Note: See TracBrowser for help on using the repository browser.