Author: husted
Date: Thu Oct 28 03:46:58 2004
New Revision: 55805
Modified:
struts/trunk/contrib/struts-shale/README.html
struts/trunk/contrib/struts-shale/project.xml
Log:
* README.html - Minor changes for consistency and clarity
* project.xml - Add dependency element to obtain servletapi 2.4 jar from the Tomcat
distribution, since that's what is in the public repositories now.
Modified: struts/trunk/contrib/struts-shale/README.html
==============================================================================
--- struts/trunk/contrib/struts-shale/README.html (original)
+++ struts/trunk/contrib/struts-shale/README.html Thu Oct 28 03:46:58 2004
@@ -1,11 +1,11 @@
<html>
<head>
- <title>Struts 2.0 'Shale' Proposal</title>
+ <title>Struts 2.x 'Shale' Proposal</title>
</head>
<body>
<div align="center">
- <h1>Struts 2.0 'Shale' Proposal</h1>
+ <h1>Struts 2.x 'Shale' Proposal</h1>
<h3>$Id$</h3>
[<a href="#Introduction">Introduction</a>]
[<a href="#ProposalDetails">Proposal Details</a>]
@@ -82,7 +82,7 @@
typically assigned code names while they are still under
discussion, and only gain access to the branding of the
overall project once they are accepted. Other proposals
-for Struts 2 have talked about tearing down the walls
+for Struts 2.x have talked about tearing down the walls
inside the framework, and those are Good Things. This
proposal, on the other hand, suggests that we fundamentally
divide the notion of a web application framework into
@@ -107,7 +107,7 @@
usability and understandability problems for some application developers,
because it requires artificial separation of portions of the application
logic that (from the viewpoint of the developer) belong together. The
-most common scenario in a Struts based application, for example, is the
+most common scenario in a Struts-based application, for example, is the
following pattern:</p>
<ol>
<li>User fills out and submits the form requesting a transaction.</li>
@@ -124,7 +124,7 @@
are tightly coupled:</p>
<ul>
<li>The setup logic for that transaction (such as retrieving
- information from the model that is required to complete
+ information from the model) that is required to complete
the presentation to the user.</li>
<li>The presentation logic in the view tier technology that
actually generates your user interface.</li>
@@ -194,7 +194,7 @@
<p>The briefest way to state the proposed architecture is to fulfill the
following goal statement:</p>
<blockquote><em>
-Divide the current monolithic controller into individual layers,
+Divide the responsibilities of the monolithic Struts 1.x controller into individual
layers,
whose features may be composed in appropriate combinations based
on the requirements of a particular application.
</em></blockquote>
@@ -223,7 +223,7 @@
<p>There continue to be framework responsibilities that are best discharged
by preprocessing (and/or postprocessing) every request, or every request that
-meets certain criteria. Struts will leverage the <code>Filter</code> APIs of
+meets certain criteria. Shale will leverage the <code>Filter</code> APIs of
the servlet container to provide mechanisms to plug in individual application
level functionality for purposes such as:<p>
<ul>
@@ -242,7 +242,7 @@
provided by Commons Chain) to implement the actual behavior performed for
each incoming request.</p>
-<p>In the specific case of authentication and authorization, Struts must
+<p>In the specific case of authentication and authorization, Shale must
interoperate both with applications wishing to utilize container managed
security, as well as those providing their own technology. In both cases,
it is expected that the outcome of performing authentication and
@@ -251,7 +251,7 @@
<code>getRemoteUser()</code>, <code>getUserPrincipal()</code>, and
<code>isUserInRole()</code>.</p>
-<p>Separate from the core of Struts 2, we should consider supporting a
+<p>Separate from the core of Shale, we should consider supporting a
subproject that provides functionally complete plug-ins that implement
functionalities of the types described above. In particular, a complete
user administration system (with support for "remember me" cookies) would
@@ -266,7 +266,7 @@
described next. However, relatively few of them deal with an intermediate
requirement to manage a "dialog" or "conversation" with the application user
that spans multiple HTTP requests. Dealing with this complexity is left as
-an "exercise left for the reader" -- a state of affairs that Struts 2 should
+an "exercise left for the reader" -- a state of affairs that Struts 2.x should
change.</p>
<p>Although this portion of the "Shale" proposal is the least fleshed out in
@@ -309,7 +309,7 @@
<h3>2.4 View Controller</h3>
-<p>Struts will support a mechanism that provides a 1:1 relationship between
+<p>Shale will support a mechanism that provides a 1:1 relationship between
a view tier presentation technology responsible for creating an HTTP response
(such as a JSP page), and a corresponding Java class containing event handling
logic, (optionally) values used in the dynamic rendering of the response, and
@@ -319,7 +319,7 @@
bean in the JSF configuration resources.</p>
<p>JSF does not require that a backing bean implement any particular interface,
-or extend any particular base class. Therefore, Struts should not impose any
+or extend any particular base class. Therefore, Shale should not impose any
such restriction either. It should merely promise to ensure that a bean of the
appropriate class (selected by a pluggable mapper that translates the JSF
view identifier into a class name) will be present -- normally in request
@@ -327,7 +327,7 @@
created view.</p>
<p>However, if an application's backing bean happens to implement a lightweight
-<code>ViewController</code> interface defined by Struts, several lifecycle
+<code>ViewController</code> interface defined by Shale, several lifecycle
related methods will be called by the framework:</p>
<ul>
<li>The backing bean will possess the following properties useful in
@@ -356,19 +356,19 @@
responded to a form submit. As such, it is a useful place to acquire
references to model data that is required in the rendering of
this view.</li>
- <li><strong>destroy()</strong> = Called after rendering has been completed,
+ <li><strong>destroy()</strong> - Called after rendering has been completed,
for all <code>ViewController</code>s that have had their
<code>init()</code> method called during this request.</li>
</ul></li>
</ul>
-<p>Other than implementing a Struts-defined interface, a
+<p>Other than implementing a Shale-defined interface, a
<code>ViewController</code> need not have any other dependence on the
framework. Thus, it remains easy to unit test such a bean outside of
a servlet container environment.</p>
<p>When coding the action method corresponding to a form's submit button,
-Struts should encourage best practices in terms of delegating business
+Shale should encourage best practices in terms of delegating business
logic to the model tier, rather than implementing it directly in the action
method. One approach to this might be to provide helper methods that make
it easy to encapsulate the current request state (including the current
@@ -386,7 +386,7 @@
at the end of the request).</p>
-<h3>2.5 Functionality Not Included In Struts 2.0 Core</h3>
+<h3>2.5 Functionality Not Included In The Shale Core</h3>
<p>Compared to Struts 1.x, support for client side validation and layout
management (Tiles) are explicitly excluded from the core controller framework.
@@ -401,7 +401,7 @@
<p>A key aspect of designing a framework is to choose which features it
implements itself, and which capabilities it imports as dependencies. The
"Shale" proposal contemplates the following dependency choices, with
-individual implementations proposed for some of them. Struts will then
+individual implementations proposed for some of them. Shale will then
provide its own APIs in the controller tier that leverage these capabilities.
</p>
@@ -413,7 +413,7 @@
the latest and greatest features of the most recent platform (for the
purposes of this discussion, JDK 5.0) and the realities of how many
developers will have the possibility of deploying applications based on
-that platform when we release the initial version of Struts 2. Currently,
+that platform when we release the initial version of Shale. Currently,
Struts 1.x requires a minimum of JDK 1.2 (because it uses the collection
classes extensively).</p>
Modified: struts/trunk/contrib/struts-shale/project.xml
==============================================================================
--- struts/trunk/contrib/struts-shale/project.xml (original)
+++ struts/trunk/contrib/struts-shale/project.xml Thu Oct 28 03:46:58 2004
@@ -132,13 +132,23 @@
</developers>
<dependencies>
+
+ <dependency>
+ <groupId>tomcat</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>5.0.28</version>
+ <url>http://jakarta.apache.org/tomcat/</url>
+ <properties>
+ <war.bundle>false</war.bundle>
+ </properties>
+ </dependency>
+
+ <!--
<dependency>
<groupId>servletapi</groupId>
<artifactId>servletapi</artifactId>
<version>2.4</version>
</dependency>
-
- <!--
<dependency>
<groupId>myfaces</groupId>
<artifactId>myfaces-jsf-api</artifactId>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]