Author: craigmcc
Date: Thu Aug 25 22:21:34 2005
New Revision: 240165

URL: http://svn.apache.org/viewcvs?rev=240165&view=rev
Log:
Add first cut at release notes, update release artifact organization.

Added:
    struts/shale/trunk/docs/
    struts/shale/trunk/docs/release-notes-1.0.0.html
Modified:
    struts/shale/trunk/build.properties.sample
    struts/shale/trunk/build.xml
    struts/shale/trunk/core-library/build.xml

Modified: struts/shale/trunk/build.properties.sample
URL: 
http://svn.apache.org/viewcvs/struts/shale/trunk/build.properties.sample?rev=240165&r1=240164&r2=240165&view=diff
==============================================================================
--- struts/shale/trunk/build.properties.sample (original)
+++ struts/shale/trunk/build.properties.sample Thu Aug 25 22:21:34 2005
@@ -25,10 +25,11 @@
 # $Id:  $
 #
 
-# Fully qualified pathname of the directory containing this file, and the
-# corresponding overall "build.xml" file.  THIS VALUE MUST BE SET CORRECTLY
-# FOR THE BUILD TO FUNCTION!
-root.dir=${user.home}/Apache/struts/current/shale
+# Root directory into which you have unpacked the Shale Framework release.
+# This value *must* be set correctly for the build to function, unless you
+# have overridden *all* of the following settings that are based on
+# "root.dir" or "lib.dir".
+root.dir=${basedir}
 
 # Fully qualified pathname of the directory into which you have unpacked
 # a binary distribution of the JavaServer Faces Reference Implementation

Modified: struts/shale/trunk/build.xml
URL: 
http://svn.apache.org/viewcvs/struts/shale/trunk/build.xml?rev=240165&r1=240164&r2=240165&view=diff
==============================================================================
--- struts/shale/trunk/build.xml (original)
+++ struts/shale/trunk/build.xml Thu Aug 25 22:21:34 2005
@@ -152,7 +152,7 @@
 
   <!-- Post build of "clay-plugin" -->
   <fileset         id="shale-clay.libs"
-                  dir="${root.dir}/clay-plugin/target/lib">
+                  dir="${basedir}/clay-plugin/target/lib">
     <include     name="*.jar"/>
   </fileset>
   <path            id="shale-clay.path">
@@ -161,7 +161,7 @@
 
   <!-- Post build of "test-framework" -->
   <fileset         id="shale-test.libs"
-                  dir="${root.dir}/test-framework/target/lib">
+                  dir="${basedir}/test-framework/target/lib">
     <include     name="*.jar"/>
   </fileset>
   <path            id="shale-test.path">
@@ -503,17 +503,29 @@
 
     <!-- Construct overall release directory -->
     <mkdir        dir="${target.dir}"/>
-    <mkdir        dir="${target.dir}/lib"/>
+    <mkdir        dir="${target.dir}/dist"/>
     <mkdir        dir="${target.dir}/webapps"/>
     <mkdir        dir="${dist.dir}"/>
 
+    <!-- Copy release-wide documentation -->
+    <copy       todir="${target.dir}"
+                 file="docs/release-notes-1.0.0.html"/>
+    <copy       todir="${target.dir}"
+                 file="build.xml"/>
+    <copy       todir="${target.dir}"
+                 file="build.properties.sample"/>
+    <copy       todir="${target.dir}">
+      <fileset    dir="core-library"
+             includes="*.txt"/>
+    </copy>
+
     <!-- Copy clay-plugin artifacts -->
     <mkdir        dir="${target.dir}/clay-plugin"/>
     <copy       todir="${target.dir}/clay-plugin">
       <fileset    dir="clay-plugin/dist"
              excludes="lib/**"/>
     </copy>
-    <copy       todir="${target.dir}/lib">
+    <copy       todir="${target.dir}/dist">
       <fileset    dir="clay-plugin/dist/lib"
              includes="*.jar"/>
     </copy>
@@ -524,7 +536,7 @@
       <fileset    dir="core-library/dist"
              excludes="lib/**"/>
     </copy>
-    <copy       todir="${target.dir}/lib">
+    <copy       todir="${target.dir}/dist">
       <fileset    dir="core-library/dist/lib"
              includes="*.jar"/>
     </copy>
@@ -535,7 +547,7 @@
       <fileset    dir="test-framework/dist"
              excludes="lib/**"/>
     </copy>
-    <copy       todir="${target.dir}/lib">
+    <copy       todir="${target.dir}/dist">
       <fileset    dir="test-framework/dist/lib"
              includes="*.jar"/>
     </copy>
@@ -575,19 +587,19 @@
   <target        name="execute">
 
     <echo     message="Executing ${target} on module core-library"/>
-    <ant          dir="${root.dir}/core-library"
+    <ant          dir="${basedir}/core-library"
                target="${target}"/>
 
     <echo     message="Executing ${target} on module clay-plugin"/>
-    <ant          dir="${root.dir}/clay-plugin"
+    <ant          dir="${basedir}/clay-plugin"
                target="${target}"/>
 
     <echo     message="Executing ${target} on module test-framework"/>
-    <ant          dir="${root.dir}/test-framework"
+    <ant          dir="${basedir}/test-framework"
                target="${target}"/>
 
     <echo     message="Executing ${target} on module use-cases"/>
-    <ant          dir="${root.dir}/use-cases"
+    <ant          dir="${basedir}/use-cases"
                target="${target}"/>
 
   </target>

Modified: struts/shale/trunk/core-library/build.xml
URL: 
http://svn.apache.org/viewcvs/struts/shale/trunk/core-library/build.xml?rev=240165&r1=240164&r2=240165&view=diff
==============================================================================
--- struts/shale/trunk/core-library/build.xml (original)
+++ struts/shale/trunk/core-library/build.xml Thu Aug 25 22:21:34 2005
@@ -229,7 +229,7 @@
     <echo  message="myfaces.present= ${myfaces.present}"/>
     <echo  message="spring.present=  ${spring.present}"/>
     <echo  message="tiles.present=   ${tiles.present}"/>
-    <echo  message="webflow.present= ${webflow.present}"/>
+    <echo  message="webflow.present= ${webflow.present  }"/>
   </target>
 
 

Added: struts/shale/trunk/docs/release-notes-1.0.0.html
URL: 
http://svn.apache.org/viewcvs/struts/shale/trunk/docs/release-notes-1.0.0.html?rev=240165&view=auto
==============================================================================
--- struts/shale/trunk/docs/release-notes-1.0.0.html (added)
+++ struts/shale/trunk/docs/release-notes-1.0.0.html Thu Aug 25 22:21:34 2005
@@ -0,0 +1,430 @@
+<!--
+
+ Copyright 2004-2005 The Apache Software Foundation.
+ 
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ 
+      http://www.apache.org/licenses/LICENSE-2.0
+ 
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ $Id: build.xml 54942 2004-10-16 22:39:25Z craigmcc $
+
+-->
+
+
+<html>
+
+  <head>
+    <title>Apache Shale (Version 1.0.0) Release Notes</title>
+  </head>
+
+  <body>
+
+    <div align="center">
+      <h1>Apache Shale (Version 1.0.0) Release Notes</h1>
+    </div>
+
+    <ul>
+    <li><a href="#Introduction">Introduction</a></li>
+    <li><a href="#Included">What Is Included</a></li>
+    <li><a href="#External">External Dependencies</a></li>
+    <li><a href="#Using">Using Shale In Your Applications</a></li>
+    <li><a href="#Changes">Changes From Previous Releases</a></li>
+    <li><a href="#Known">Known Issues In This Release</a></li>
+    </ul>
+
+    <a name="Introduction"></a>
+    <h3>1.0 Introduction</h3>
+
+    <p>Welcome to the <a href="http://struts.apache.org/shale/";>Apache Shale
+    Framework</a>.  Shale is a next generation framework for building web
+    applications using Java technology, and builds upon the framework and
+    component APIs provided by <a 
href="http://java.sun.com/j2ee/javaserverfaces/";>
+    JavaServer Faces</a>.</p>
+
+    <p>This is the initial milestone release of Shale, released to encourage
+    experimentation and gather feedback on usage issues and requested features.
+    This should be treated as an "alpha" quality release.  However, many of
+    the APIs in Shale are reasonably stable -- for details, scroll down to the
+    <em>API Package Target Audiences and Stability Ratings</em> section of the
+    <a href="core-library/docs/api/overview-summary.html">Core Library Overview
+    </a> JavaDocs.</p>
+
+    <a name="Included"></a>
+    <h3>2.0 What Is Included</h3>
+
+    <p>A release of Shale includes several primary categories of materials:</p>
+    <ul>
+    <li><a href="dist">Shale distribution libraries</a>:
+        <ul>
+        <li><code>shale-core.jar</code> - Core framework functionality</li>
+        <li><code>shale-clay.jar</code> - Clay plug-in</li>
+        <li><code>shale-spring.jar</code> - Optional integration layer with
+            adapters for the <a href="http://springframework.org";>Spring
+            Framework</a></li>
+        <li><code>shale-test.jar</code> - Unit test framework</code></li>
+        <li><code>shale-tiles.jar</code> - Optional integration layer with
+            the <em>standalone</em> version of Tiles, currently under
+            development as part of the <a href="http://struts.apache.org";>
+            Apache Struts</a> project.</li>
+        </ul>
+    <li><a href="webapps">Example web applications</a>
+        <ul>
+        <li><code>struts-shale-usecases.war</code> Omnibus example application
+            that illustrates the use of most Shale features.  As a convenience,
+            the <code>/WEB-INF/lib directory of this application contains a 
copy
+            of all external dependencies described below.</li>
+        </ul></li>
+    <li>Source code and JavaDocs for the following modules:
+        <ul>
+        <li><a href="core-library/docs/api/index.html">Core Library</a></li>
+        <li><a href="clay-plugin/docs/api/index.html">Clay Plug-In</a></li>
+        <li><a href="test-framework/docs/api/index.html">Unit Test 
Framework</a></li>
+        <li><a href="use-cases/docs/api/index.html">Use Cases Example 
App</a></li>
+        </ul>
+    </ul>
+    
+    <a name="External"></a>
+    <h3>3.0 External Dependencies</h3>
+
+    <p>The following table describes runtime external dependencies of the Shale
+    distribution libraries listed in the previous section.</p>
+
+    <table border="1">
+      <thead>
+        <tr>
+          <th>Shale Library</th>
+          <th>External Library</th>
+          <th>Version</th>
+          <th>Notes</th>
+        </tr>
+      </thead>
+      <tbody>
+        <tr>
+          <td><code>shale-core.jar</code></td>
+          <td>JavaServer Faces Implementation</td>
+          <td align="center">1.1</td>
+          <td align="center"><a href="#[1]">[1]</a></td>
+        </tr>
+        <tr>
+          <td><code>shale-core.jar</code></td>
+          <td><a href="http://jakarta.apache.org/commons/beanutils/";>Commons 
BeanUtils</a></td>
+          <td align="center">1.7</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-core.jar</code></td>
+          <td><a href="http://jakarta.apache.org/commons/chain/";>Commons 
Chain</a></td>
+          <td align="center">1.0</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-core.jar</code></td>
+          <td><a href="http://jakarta.apache.org/commons/digester/";>Commons 
Digester</a></td>
+          <td align="center">1.7</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-core.jar</code></td>
+          <td><a href="http://jakarta.apache.org/commons/logging/";>Commons 
Logging</a></td>
+          <td align="center">1.0.4</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-core.jar</code></td>
+          <td><a href="http://jakarta.apache.org/commons/validator/";>Commons 
Chain</a></td>
+          <td align="center">1.0</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-clay.jar</code></td>
+          <td>(No additional external dependencies)</td>
+          <td align="center">---</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-spring.jar</code></td>
+          <td><a href="http://springframework.org/";>Spring Framework</a></td>
+          <td align="center">1.2.2</td>
+          <td align="center"><a href="#[2]">[2]</a></td>
+        </tr>
+        <tr>
+          <td><code>shale-test.jar</code></td>
+          <td>(No additional external dependencies)</td>
+          <td align="center">---</td>
+          <td align="center">&nbsp;</td>
+        </tr>
+        <tr>
+          <td><code>shale-tiles.jar</code></td>
+          <td><a 
href="http://cvs.apache.org/builds/struts/nightly/sandbox/tiles-core/";>
+              Standalone Tiles</a></td>
+          <td align="center">Nightly</td>
+          <td align="center"><a href="#[3]">[3]</a></td>
+        </tr>
+      </tbody>
+    </table>
+
+    <ol>
+    <li><a name="[1]"></a>Shale has been tested with the
+        <a href="https://javaserverfaces.dev.java.net/";>
+        JavaServer Faces Reference Implementation</a> (Version 1.1_01) and
+        with <a href="http://myfaces.apache.org/";>Apache MyFaces</a>
+        (Version 1.0.9).  Be sure to read the release documentation of
+        each implementation to acquire the dependencies of that package.</li>
+    <li><a name="[2]"></a>Spring ships with either an all-in-one JAR file
+        (<code>spring.jar</code>) or a set of smaller JAR files containing
+        only portions of the framework.  If you do not use the all-in-one
+        file, you will need to use <code>spring-beans.jar</code>,
+        <code>spring-context.jar</code>, <code>spring-core.jar</code>, and
+        <code>spring-web.jar</code>.</li>
+    <li><a name="[3]"></a>Standalone Tiles is a (work in progress) extraction
+        of the Tiles Framework out of Struts, removing Struts dependencies,
+        and doing some refactoring.  To date there have been no formal releases
+        of this library; the link above points to the nightly builds.</li>
+    </ol>
+
+    <a name="Using"></a>
+    <h3>4.0 Using Shale In Your Applications</h3>
+
+    <p>Shale based applications should run on any server that implements the
+    Servlet 2.4 and JavaServer Pages 2.0 APIs.  The following steps are
+    required to assemble a Shale based application that may be depoyed and
+    executed.
+
+    <h4>4.1 Add Required Libraries</h4>
+
+    <p>If your server does not already provide an implementation of JavaServer
+    Faces, you must include such an implementation (plus all of its dependent
+    JARs) in the <code>/WEB-INF/lib</code> directory.</p>
+
+    <p>All Shale based applications will require <code>shale-core.jar</code>
+    (and its dependencies, as described above).  If you wish to utilize the
+    features provided in the optional Shale components 
(<code>shale-clay.jar</code>,
+    <code>shale-spring.jar</code>, and/or <code>shale-tiles.jar</code>), 
include
+    those JARs (and ther external dependencies) as well.</p>
+
+    <p>The <code>shale-test.jar</code> contains base classes for
+    <a href="http://junit.org";>JUnit</a> based unit tests for your application
+    classes.  As such, it is useful only at application build time, and should
+    never be included in a runtime web application archive.</p>
+
+    <h4>4.2 Configure <code>/WEB-INF/web.xml</code> Resource</h4>
+
+    <p>Create a <code>/WEB-INF/web.xml</code> resource that conforms to the
+    rules defined in the Servlet 2.4 Specification.  You can use the one in
+    the Use Cases example as a guide.  Include the following elements (at
+    appropriate places) as needed.</p>
+
+    <p>Configure whether you want JavaServer Faces to save component state
+    on the client side or the server side.  This lets you choose between the
+    tradeoffs of extra network traffic versus extra server memory usage,
+    without affecting your application code.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      &lt;param-name&gt;javax.faces.STATE_SAVING_METHOD&lt;/param-name&gt;
+      &lt;param-value&gt;server&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>If you have defined JavaServer Faces configuration resources in addition
+    to, or instead of, the default one (<code>/WEB-INF/faces-config.xml</code>,
+    list them here.  You may specify more than one resource by separating the
+    paths with a comma (',') character.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      &lt;param-name&gt;javax.faces.CONFIG_FILES&lt;/param-name&gt;
+      &lt;param-value&gt;/WEB-INF/faces-config.xml&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>If you have defined your own Command Chain commands (to customize the
+    behavior of the standard chains, or to implement mappings for remote
+    commands), tell Commons Chain where your configuration resource is.
+    You can specify more than one resource by separating the paths with a
+    comma (',') characters.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      
&lt;param-name&gt;org.apache.commons.chain.CONFIG_WEB_RESOURCE&lt;/param-name&gt;
+      &lt;param-value&gt;/WEB-INF/chain-config.xml&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>If you have defined your own Shale Dialog configuration resources
+    in addition to (or instead of) the standard path
+    (<code>/WEB-INF/dialog-config.xml</code>), specify the path here.  You may
+    specify more than one resource by separating the paths with a
+    comma (',') character.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      
&lt;param-name&gt;org.apache.shale.dialog.CONFIGURATION&lt;/param-name&gt;
+      &lt;param-value&gt;/WEB-INF/dialog-config.xml&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>If you are using the optional integration with Spring, you must specify
+    that path to the configuration resource for the ApplicationContext.
+    You can specify more than one resource by separating them with 
whitespace.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt;
+      &lt;param-value&gt;/WEB-INF/applicationContext.xml&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>If you are using the Clay plugin, you must specify the path to the
+    configuration resource defining your Clay component definitions.  You can
+    specify more than one resource by separating them with comma (',')
+    characters.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      &lt;param-name&gt;clay-config-files&lt;/param-name&gt;
+      &lt;param-value&gt;/WEB-INF/clay-config.xml&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>If you are using the Tapestry-like views feature of the Clay plugin,
+    you may override the default resource extension (.clay) used to identify
+    pages containing component references.</p>
+
+    <pre>
+    &lt;context-param&gt;
+      &lt;param-name&gt;clay-template-suffix&lt;/param-name&gt;
+      &lt;param-value&gt;.clay&lt;/param-value&gt;
+    &lt;/context-param&gt;
+    </pre>
+
+    <p>Configure the standard Shale application controller filter, and map it
+    to the requests you want it to apply to.  At a minimum, you will want to
+    map this filter to the same pattern that <code>FacesServlet</code> is
+    mapped to (see below); however, the simplest approach is to use the
+    <code>/*</code> pattern to map the filter to all incoming requests.</p>
+
+    <pre>
+    &lt;filter&gt;
+      &lt;filter-name&gt;shale&lt;/filter-name&gt;
+      &lt;filter-class&gt;
+        org.apache.shale.faces.ShaleApplicationFilter
+      &lt;/filter-class&gt;
+    &lt;/filter&gt;
+    </pre>
+
+    <pre>
+    &lt;filter-mapping&gt;
+      &lt;filter-name&gt;shale&lt;/filter-name&gt;
+      &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
+    &lt;/filter-mapping&gt;
+    </pre>
+
+    <p>If your JavaServer Faces implementation requires a listener 
registration,
+    configure it here.  For example, MyFaces 1.0.9 requires the following
+    (note - it is likely that future versions of MyFaces will not require 
this):</p>
+
+    <pre>
+    &lt;listener&gt;
+      &lt;listener-class&gt;
+        org.apache.myfaces.webapp.StartupServletContextListener
+      &lt;/listener-class&gt;
+    &lt;/listener&gt;
+    </pre>
+
+    <p>Configure the Commons Chain configuration listener, so that command
+    chains definitions specified by the application, and those defined
+    internally by Shale, will be loaded at application startup time.</p>
+
+    <pre>
+    &lt;listener&gt;
+      &lt;listener-class&gt;
+        org.apache.commons.chain.web.ChainListener
+      &lt;/listener-class&gt;
+    &lt;/listener&gt;
+    </pre>
+
+    <p>If you are using the Clay plugin, configure the Clay configuration
+    listener, so that component definitions specified by the application
+    as well as those specified internally by Shale, will be loaded at
+    application startup time.</p>
+
+    <pre>
+    &lt;listener&gt;
+      &lt;listener-class&gt;
+        org.apache.shale.clay.config.ClayConfigureListener
+      &lt;/listener-class&gt;
+    &lt;/listener&gt;
+    </pre>
+
+    <p>If you are using the Spring integration feature, configure the Spring
+    configuration listener so that the application context will be configured
+    at application startup time.</p>
+
+    <pre>
+    &lt;listener&gt;
+      &lt;listener-class&gt;
+        org.springframework.web.context.ContextLoaderListener
+      &lt;/listener-class&gt;
+    &lt;/listener&gt;
+    </pre>
+
+    <p>Configure the standard JavaServer Faces processing servlet and mapping.
+    You may use either prefix or extension mapping, and the JSF runtime will
+    automatically adapt.  The example below shows the most common default:</p>
+
+    <pre>
+    &lt;servlet&gt;
+      &lt;servlet-name&gt;faces&lt;/servlet-name&gt;
+      
&lt;servlet-class&gt;javax.faces.webapp.FacesServlet&lt;/servlet-class&gt;
+    &lt;/servlet&gt;
+    </pre>
+
+    <pre>
+    &lt;servlet-mapping&gt;
+      &lt;servlet-name&gt;faces&lt;/servlet-name&gt;
+      &lt;url-pattern&gt;*.faces&lt;/url-pattern&gt;
+    &lt;/servlet-mapping&gt;
+    </pre>
+
+    <p>If you are using the Tapestry-like views feature of the Clay plug-in,
+    map the standard JavaServer Faces servlet to the same extension you
+    specified for the <code>clay-template-suffix</code> context init 
parameter.</p>
+
+    <pre>
+    &lt;servlet-mapping&gt;
+      &lt;servlet-name&gt;faces&lt;/servlet-name&gt;
+      &lt;url-pattern&gt;*.html&lt;/url-pattern&gt;
+    &lt;/servlet-mapping&gt;
+    </pre>
+
+    <p>Optionally, configure the "welcome file(s)" for your application.</p>
+
+    <pre>
+    &lt;welcome-file-list&gt;
+      &lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;
+    &lt;/welcome-file-list&gt;
+    </pre>
+
+    <a name="Changes"></a>
+    <h3>5.0 Changes From Previous Releases</h3>
+
+    <p>This is the first milestone release of Shale, so there is no formal
+    list of changes from the previous release.</p>
+
+    <a name="Known"></a>
+    <h3>6.0 Known Issues In This Release</h3>
+
+    <p>FIXME</p>
+
+  </body>
+
+</html>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to