You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by cr...@locus.apache.org on 2000/09/15 02:40:56 UTC
cvs commit: jakarta-struts/src/doc/stylesheets struts.xsl
craigmcc 00/09/14 17:40:56
Modified: src/doc project.xml
src/doc/stylesheets struts.xsl
Added: src/doc todo.xml
Log:
The beginnings of the TODO list converted to the new documentation format,
with room for people to sign up for implementing particular tasks.
Revision Changes Path
1.5 +3 -2 jakarta-struts/src/doc/project.xml
Index: project.xml
===================================================================
RCS file: /home/cvs/jakarta-struts/src/doc/project.xml,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- project.xml 2000/09/07 01:37:26 1.4
+++ project.xml 2000/09/15 00:40:55 1.5
@@ -8,7 +8,8 @@
<menu name="Overview">
<item name="Home" href="index.html"/>
<item name="Installation" href="installation.html"/>
- <item name="API Javadoc" href="api/index.html"/>
+ <item name="Javadoc" href="api/index.html"/>
+ <item name="TODO List" href="todo.html"/>
</menu>
<menu name="New Tag Library Reference">
@@ -21,7 +22,7 @@
<menu name="Old Documents">
<item name="Tag Library (Old)" href="tags.html"/>
- <item name="TODO" href="todo.txt"/>
+ <item name="TODO (Old)" href="todo.txt"/>
<item name="User's Guide" href="users_guide.html"/>
</menu>
1.1 jakarta-struts/src/doc/todo.xml
Index: todo.xml
===================================================================
<?xml version="1.0"?>
<document url="./todo.xml">
<properties>
<author>Craig R. McClanahan</author>
<title>The Struts Project TODO List</title>
</properties>
<body>
<section name="Introduction" href="Intro">
<p>Application frameworks, like the applications we build with them,
never seem to be completed. The following items have been targeted
for completion in preparation for a version <strong>1.0</strong>
release of Struts, timed to coincide with the ApacheCon Europe 2000
conference in London, October 23-25, 2000.</p>
<p>Whether everything listed here makes it in to the final release
depends primarily on how many volunteers are interested in contributing
code and ideas to make it happen. If you are interested in helping out
on specific tasks listed below, please let us know (via a message to the
STRUTS-DEV mailing list), and we will put your name in the "Volunteers"
column. There is also no problem having more than one person collaborating
on a particular task, if you would like to do that.</p>
<p>The TODO list tasks are divided into functional areas that correspond
to the major components of the Struts Framework. References in square
brackets are the Java package containing the corresponding source code.</p>
</section>
<task-list name="MVC Framework [org.apache.struts.action]" href="MVC">
<info>
<p>This is the core controller servlet, with support for the developer's
action and form bean classes, plus the supporting data structures.</p>
</info>
<task name="Enhanced Configuration">
<info>
<p>Implement a new configuration mechanism for the controller servlet
(replacing <code>action.xml</code>) that is based on the proposed
<code>struts-config.dtd</code> DTD with future extensibility in mind.
For backwards compatibility, support the existing configuration format
at least until 1.0 is released.</p>
</info>
<assigned>
Craig McClanahan
</assigned>
</task>
<task name="Standard Actions">
<info>
<p>Begin the collection of a set of generally useful standard
<code>Action</code> implementations, in a new Java package
[<code>org.apache.struts.actions</code>]. Useful actions to consider:
add/change/delete configured mappings, forwards, and beans; reload
the configuration file; file upload handling.</p>
</info>
</task>
<task name="Default Action">
<info>
<p>Support a configurable default action mapping if none of the
other mappings are selected.</p>
</info>
</task>
<task name="Enhanced Validation">
<info>
<p>Replace the current <code>ValidatingActionForm.validate()</code>
method with one that takes useful contextual arguments (request?,
servlet?, mapping?) so that it can do more global sorts of validation
checks, as well as access external resources.</p>
<p><strong>NOTE: Likely to break backwards compatibility.</strong></p>
</info>
</task>
<task name="Calculate User Locale">
<info>
<p>Provide configurable support in <code>ActionServlet</code> to
attempt a mapping of the values specified in the HTTP
<code>Accept-Language</code> headers (if any) to a corresponding
<code>Locale</code>, if one has not been set as a session attribute
by application code. It should also be possible to request creation
of this Locale as a request attribute, rather than a session
attribute, when Struts is used in a session-less environment.</p>
</info>
</task>
<task name="Non-HTTP Actions">
<info>
<p>Define a second <code>Action.perform()</code> method signature that
takes <code>ServletRequest</code> and <code>ServletResponse</code> as
parameters, rather than their HTTP subclasses. Default implementation
in <code>ActionBase</code> should forward to the HTTP equivalents if
possible, or throw an exception otherwise, to partially preserve
backwards compatibility.</p>
</info>
</task>
<task name="Referer-Based Forwards">
<info>
<p>Support a special type of <code>ActionForward</code> that uses the
HTTP <code>Referer</code> header to identify the page to be returned
to for the input form, without having to name it explicitly. This
allows page developers to include the same form in multiple pages,
if desired.</p>
</info>
</task>
<task name="Extend Forward Mechanism">
<info>
<p>Extend the functionality of ActionForward to support ability to
forward across SSL-versus-not access to the same webapp. This may
require dependence on container-specific features.</p>
</info>
</task>
<task name="ActionForm Population">
<info>
<p>Consider migrating management of ActionForm population out of
ActionServlet (possibly into ActionMapping) and/or provide hooks
in the interface for application-level control.</p>
</info>
</task>
<task name="Developer Documentation">
<info>
<p>Create more detailed documentation of how the Struts controller
servlet framework is intended to be used, and how it might be
extended. This documentation should be focused on the needs of
web application developers and architects.</p>
</info>
</task>
</task-list>
<task-list name="XML Digester [org.apache.struts.digester]" href="Digester">
<info>
<p>The Digester package supports scripted firing of "rules" based on
matching a particular pattern of nested XML tags. Among the predefined
rules that can be utilized are rules to create new objects, set bean
properties from the contents of attributes, or call arbitrary methods
with arguments based on the XML content being parsed. A common
use for this technology (illustrated in the Struts ActionServlet), is
parsing configuration files and building corresponding object trees.</p>
</info>
<task name="Developer Documentation">
<info>
<p>Create more detailed documentation of how the Digester package
can be utilized by application developers.</p>
</info>
</task>
</task-list>
</body>
</document>
1.4 +49 -1 jakarta-struts/src/doc/stylesheets/struts.xsl
Index: struts.xsl
===================================================================
RCS file: /home/cvs/jakarta-struts/src/doc/stylesheets/struts.xsl,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- struts.xsl 2000/08/29 23:57:13 1.3
+++ struts.xsl 2000/09/15 00:40:56 1.4
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Content Stylesheet for Struts Documentation -->
-<!-- $Id: struts.xsl,v 1.3 2000/08/29 23:57:13 craigmcc Exp $ -->
+<!-- $Id: struts.xsl,v 1.4 2000/09/15 00:40:56 craigmcc Exp $ -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
@@ -230,6 +230,54 @@
<p><xsl:apply-templates/><br/></p>
</xsl:template>
+
+ <!-- Process a task list section -->
+ <xsl:template match="task-list">
+ <xsl:choose>
+ <xsl:when test="@href">
+ <xsl:variable name="href">
+ <xsl:value-of select="@href"/>
+ </xsl:variable>
+ <a name="{$href}"></a>
+ </xsl:when>
+ </xsl:choose>
+ <table border="0" cellspacing="5" cellpadding="5" width="100%">
+ <tr><td bgcolor="{$banner-bg}">
+ <font color="{$banner-fg}" face="arial,helvetica,sanserif" size="+1">
+ <xsl:value-of select="@name"/>
+ </font>
+ </td></tr>
+ <tr><td>
+ <xsl:apply-templates select="info"/>
+ </td></tr>
+ <tr><td>
+ <blockquote>
+ <table border="1" cellspacing="5" cellpadding="5" width="100%">
+ <tr>
+ <th width="75%">Description</th>
+ <th width="25%">Volunteer</th>
+ </tr>
+ <xsl:apply-templates select="task"/>
+ </table>
+ </blockquote>
+ </td></tr>
+ </table>
+ </xsl:template>
+
+ <!-- Process an individual task (in a TODO list) -->
+ <xsl:template match="task">
+ <tr>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@name">
+ <em><xsl:value-of select="@name"/></em>.
+ </xsl:when>
+ </xsl:choose>
+ <xsl:value-of select="info"/>
+ </td>
+ <td><xsl:value-of select="assigned"/></td>
+ </tr>
+ </xsl:template>
<!-- Process everything else by just passing it through -->
<xsl:template match="*|@*">