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"> </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"> </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"> </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"> </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"> </td>
+ </tr>
+ <tr>
+ <td><code>shale-clay.jar</code></td>
+ <td>(No additional external dependencies)</td>
+ <td align="center">---</td>
+ <td align="center"> </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"> </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>
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>server</param-value>
+ </context-param>
+ </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>
+ <context-param>
+ <param-name>javax.faces.CONFIG_FILES</param-name>
+ <param-value>/WEB-INF/faces-config.xml</param-value>
+ </context-param>
+ </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>
+ <context-param>
+
<param-name>org.apache.commons.chain.CONFIG_WEB_RESOURCE</param-name>
+ <param-value>/WEB-INF/chain-config.xml</param-value>
+ </context-param>
+ </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>
+ <context-param>
+
<param-name>org.apache.shale.dialog.CONFIGURATION</param-name>
+ <param-value>/WEB-INF/dialog-config.xml</param-value>
+ </context-param>
+ </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>
+ <context-param>
+ <param-name>contextConfigLocation</param-name>
+ <param-value>/WEB-INF/applicationContext.xml</param-value>
+ </context-param>
+ </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>
+ <context-param>
+ <param-name>clay-config-files</param-name>
+ <param-value>/WEB-INF/clay-config.xml</param-value>
+ </context-param>
+ </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>
+ <context-param>
+ <param-name>clay-template-suffix</param-name>
+ <param-value>.clay</param-value>
+ </context-param>
+ </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>
+ <filter>
+ <filter-name>shale</filter-name>
+ <filter-class>
+ org.apache.shale.faces.ShaleApplicationFilter
+ </filter-class>
+ </filter>
+ </pre>
+
+ <pre>
+ <filter-mapping>
+ <filter-name>shale</filter-name>
+ <url-pattern>/*</url-pattern>
+ </filter-mapping>
+ </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>
+ <listener>
+ <listener-class>
+ org.apache.myfaces.webapp.StartupServletContextListener
+ </listener-class>
+ </listener>
+ </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>
+ <listener>
+ <listener-class>
+ org.apache.commons.chain.web.ChainListener
+ </listener-class>
+ </listener>
+ </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>
+ <listener>
+ <listener-class>
+ org.apache.shale.clay.config.ClayConfigureListener
+ </listener-class>
+ </listener>
+ </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>
+ <listener>
+ <listener-class>
+ org.springframework.web.context.ContextLoaderListener
+ </listener-class>
+ </listener>
+ </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>
+ <servlet>
+ <servlet-name>faces</servlet-name>
+
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ </servlet>
+ </pre>
+
+ <pre>
+ <servlet-mapping>
+ <servlet-name>faces</servlet-name>
+ <url-pattern>*.faces</url-pattern>
+ </servlet-mapping>
+ </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>
+ <servlet-mapping>
+ <servlet-name>faces</servlet-name>
+ <url-pattern>*.html</url-pattern>
+ </servlet-mapping>
+ </pre>
+
+ <p>Optionally, configure the "welcome file(s)" for your application.</p>
+
+ <pre>
+ <welcome-file-list>
+ <welcome-file>index.jsp</welcome-file>
+ </welcome-file-list>
+ </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]