You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by Jeremiah Johnson <je...@bea.com> on 2005/09/15 00:35:14 UTC

RE: svn commit: r280193 - in /beehive/trunk: ./ docs/forrest/release/src/documentation/content/xdocs/ docs/forrest/release/src/documentation/content/xdocs/controls/ docs/forrest/release/src/documentation/content/xdocs/netui/ netui/test/dist-test/ant/ user

This introduced a new flag, but not sure that it was intentional.  The
skip.docs exists in a couple spots, this added skip.docs.build.

If it was intentional, then more needs to be done because this won't
work (but is should, IMHO):
ant clean deploy build.dist -Dskip.docs=true

- jeremiah

> -----Original Message-----
> From: ekoneil@apache.org [mailto:ekoneil@apache.org]
> Sent: Sunday, September 11, 2005 4:39 PM
> To: commits@beehive.apache.org
> Subject: svn commit: r280193 - in /beehive/trunk: ./
> docs/forrest/release/src/documentation/content/xdocs/
> docs/forrest/release/src/documentation/content/xdocs/controls/
> docs/forrest/release/src/documentation/content/xdocs/netui/
> netui/test/dist-test/ant/ user/...
> 
> Author: ekoneil
> Date: Sun Sep 11 15:38:28 2005
> New Revision: 280193
> 
> URL: http://svn.apache.org/viewcvs?rev=280193&view=rev
> Log:
> Change the structure of netui-blank to reflect the web project layout
> guidelines described in the Tomcat docs.  In short, this turns a
structure
> like:
> 
>   fooWeb/
>     index.jsp
>     WEB-INF/
>       web.xml
>       src/
>         Foo.java
> 
> into something like:
> 
>   fooWeb/
>     src/
>       Foo.java
>     web/
>       index.jsp
>       WEB-INF/
>         web.xml
> 
> with the exception of Page Flow source files which are often left in
web/
> for convenience.  The Ant build support for netui-blank is provided
here
> as well as tweaks to the documentation to reflect this change (and a
> complete rewrite of sample_netui-blank.xml).
> 
> This brings the NetUI web project model into line with the conventions
> followed in many IDEs and existing web project builds.
> 
> Other changes:
> - add a "new.netui.webapp" target that acts as a mini command-line
wizard
> for creating a new NetUI web project.  It lives in
<dist-root>/beehive-
> imports.xml.
> - add flags for disabling the documentation and samples builds when
> creating a distribution.  These shouldn't be used when committing
changes
> that could break a distribution, but they're convenient for making
"quick"
> distributions that contain just the runtime without verifying the
samples
> builds or building all of the doc kit / API Javadocs.
> 
> BB: self
> Test: all DRTs / distribution tests pass / ran clean / build / war on
> netui-blank in the distribution
> 
> 
> Modified:
>     beehive/trunk/distribution.xml
> 
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/contr
ol
> s/tutorial_controls.xml
> 
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/p
> rojects.xml
> 
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/s
> ample_netui-blank.xml
> 
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/t
> utorial_pageflow.xml
> 
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.
xm
> l
>     beehive/trunk/netui/test/dist-test/ant/testWebBuild.xml
>     beehive/trunk/user/beehive-imports.xml
>     beehive/trunk/user/netui-blank/build.properties
>     beehive/trunk/user/netui-blank/build.xml
> 
> Modified: beehive/trunk/distribution.xml
> URL:
>
http://svn.apache.org/viewcvs/beehive/trunk/distribution.xml?rev=280193&
r1
> =280192&r2=280193&view=diff
>
========================================================================
==
> ====
> --- beehive/trunk/distribution.xml (original)
> +++ beehive/trunk/distribution.xml Sun Sep 11 15:38:28 2005
> @@ -73,12 +73,17 @@
> 
>          <update-dist-readme/>
> 
> +        <antcall target="verify.dist.samples"/>
> +    </target>
> +
> +    <target name="verify.dist.samples" unless="skip.samples.verify"
> description="Verify the builds for the samples for a Beehive
> distribution">
> +
>          <property name="samples.verify.dir"
> location="${dist.tmp.dir}/samples-build-verification"/>
>          <copy todir="${samples.verify.dir}">
>              <fileset dir="${dist.dir}"/>
>          </copy>
>          <ant antfile="${samples.verify.dir}/samples/wsm-blank/WEB-
> INF/src/build.xml" target="build" inheritAll="false"/>
> -        <ant antfile="${samples.verify.dir}/samples/netui-blank/WEB-
> INF/src/build.xml" target="build" inheritAll="false"/>
> +        <ant antfile="${samples.verify.dir}/samples/netui-
> blank/build.xml" target="build" inheritAll="false"/>
>          <ant antfile="${samples.verify.dir}/samples/controls-
> blank/build.xml" target="build" inheritAll="false"/>
> 
>          <ant
> antfile="${samples.verify.dir}/samples/petstoreWeb/build.xml"
> target="build" inheritAll="false">
> @@ -263,21 +268,7 @@
>                file="${beehive.home}/samples/petstoreWeb/build-
> dist.properties" failOnError="true"/>
> 
>          <!-- Build the netui-blank distro -->
> -        <copy todir="${dist.tmp.dir}/netui-blank">
> -            <fileset dir="${beehive.home}/netui/build/dist/webapp">
> -                <exclude name="WEB-INF/lib/*.jar"/>
> -                <exclude name="WEB-INF/src/build.xml"/>
> -            </fileset>
> -        </copy>
> -
> -        <copy todir="${dist.dir}/samples/netui-blank/WEB-INF/src">
> -            <fileset dir="${beehive.home}/user/netui-blank"
> includes="**"/>
> -        </copy>
> -
> -        <!-- finally, move netui-blank from the staging directory
into
> the distribution -->
> -        <copy todir="${dist.dir}/samples/netui-blank">
> -            <fileset dir="${dist.tmp.dir}/netui-blank"/>
> -        </copy>
> +        <antcall target="create.netui-blank"/>
> 
>          <copy todir="${dist.dir}/samples/netui-samples"
> failOnError="true">
>              <fileset dir="samples/netui-samples">
> @@ -339,7 +330,7 @@
>          </copy>
>      </target>
> 
> -    <target name="build.dist.docs" description="Build the
documentation
> for a Beehive distribution">
> +    <target name="build.dist.docs" unless="skip.docs.build"
> description="Build the documentation for a Beehive distribution">
>          <antcall target="build.release.docs"/>
> 
>          <copy todir="${dist.dir}/docs" failOnError="true">
> @@ -356,6 +347,27 @@
>          <!-- copy the readme and update it to include the revision
number
> -->
>          <copy file="${dist.readme.template}"
> tofile="${dist.dir}/docs/README.txt" overwrite="true" verbose="true"/>
>          <build-dist-readme readmedir="${dist.dir}/docs"
> revtrailer="${dist.readme.rev.trailer}"/>
> +    </target>
> +
> +    <target name="create.netui-blank">
> +        <copy todir="${dist.dir}/samples/netui-blank/src">
> +            <fileset
dir="${beehive.home}/netui/build/dist/webapp/WEB-
> INF/src" includes="**">
> +                <exclude name="build.xml"/>
> +                <exclude name="build.properties"/>
> +            </fileset>
> +        </copy>
> +
> +        <copy todir="${dist.dir}/samples/netui-blank/">
> +            <fileset dir="${beehive.home}/user/netui-blank"
> includes="**"/>
> +        </copy>
> +
> +        <copy todir="${dist.dir}/samples/netui-blank/web">
> +            <fileset dir="${beehive.home}/netui/build/dist/webapp"
> includes="**">
> +                <exclude name="WEB-INF/src/"/>
> +                <exclude name="WEB-INF/classes/"/>
> +                <exclude name="WEB-INF/lib/"/>
> +            </fileset>
> +        </copy>
>      </target>
> 
>      <target name="build.release.docs" unless="skip.docs"
> description="Builds documentation for a Beehive distribution">
> 
> Modified:
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/contr
ol
> s/tutorial_controls.xml
> URL:
>
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/doc
um
>
entation/content/xdocs/controls/tutorial_controls.xml?rev=280193&r1=2801
92
> &r2=280193&view=diff
>
========================================================================
==
> ====
> ---
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/contr
ol
> s/tutorial_controls.xml (original)
> +++
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/contr
ol
> s/tutorial_controls.xml Sun Sep 11 15:38:28 2005
> @@ -9,10 +9,12 @@
>              <title>Introduction</title>
>              <section>
>                  <title>Tutorial Goals</title>
> -                <p>The Controls tutorial is provided as a way to
become
> familiar with the concepts of Controls in Beehive.  The tutorial
> -                   walks through creating, building, and deploying a
> sample project that uses a Control from a page flow.
> <strong>Note:</strong> NetUI Page Flow isn't
> -                   required to use Controls; they just provide a
> convenient way to demonstrate running a Control.  In this tutorial,
> -                   you will learn:</p>
> +                <p>
> +                The Controls tutorial is provided as a way to become
> familiar with the concepts of Controls in Beehive.  The tutorial
> +                walks through creating, building, and deploying a
sample
> project that uses a Control from a page flow.
> +                <strong>Note:</strong> NetUI is not required to use
> Controls; they just provide a convenient way to demonstrate
> +                running a Control.  In this tutorial, you will learn:
> +                </p>
>                  <ul>
>                      <li>What Beehive Controls are for and what they
> do.</li>
>                      <li>How to create a Beehive Control interface and
> implementation.</li>
> @@ -27,33 +29,38 @@
>              <title>Step 1: Setup a Beehive-enabled Web
> Application</title>
>              <section id="setup_shell">
>                  <title>Set Shell Variables</title>
> -                <p>Complete all of the necessary and optional steps
in
> the following topic: <a class="fork" href="site:setup">Beehive
> Installation and Setup</a></p>
> +                <p>
> +                Complete all of the necessary and optional steps in
the
> following topic: <a class="fork" href="site:setup">Beehive
> +                Installation and Setup</a>
> +                 </p>
>              </section>
>              <section id="setup_make_project">
>                  <title>Create a Beehive-enabled Web Project</title>
>                  <p>
> -                In order to follow the steps in this tutorial, it's
> necessary to create a Beehive-enabled web application.
Beehive-enabled
> web applications
> -                are described <a href="site:setup">here</a>.  A
skeleton
> Beehive-enabled web project is provided in the samples/ directory as
> -                <a href="site:netui-blank">netui-blank</a>.  This
> contains a basic Ant build file and an example page flow controller.
To
> create the
> +                In order to follow the steps in this tutorial, it's
> necessary to create a Beehive-enabled web application.
> +                Beehive-enabled web applications are described <a
> href="site:setup">here</a>.  A skeleton Beehive-enabled web
> +                project is provided in the samples/ directory as <a
> href="site:netui-blank">netui-blank</a>.  This contains
> +                a basic Ant build file and an example page flow
> controller.  To create the
>                  web project, copy and then rename the <a
> href="site:netui-blank">netui-blank</a> project using these steps:
>                  </p>
>                  <ol>
>                  <li>Create a directory <code>/beehive_projects</code>
(on
> Windows, this would be <code>C:\beehive_projects</code>).</li>
> -                <li>Copy the folder
> <code>&lt;BeehiveDistribution>/samples/netui-blank</code> into
> -                    <code>/beehive_projects</code> where
> <code>&lt;BeehiveDistribution></code> is the directory that contains
your
> -                    unzipped copy of a Beehive distribution.  A
typical
> value might be <code>/apache/apache-beehive-1.0</code>.)</li>
> -                <li>Rename the folder
>
<code>/beehive_projects/</code><strong><code>netui-blank</code></strong>
> to
> -
>
<code>/beehive_projects/</code><strong><code>controls_tutorial</code></s
tr
> ong></li>
> +                <li>Run the Ant target to create a new NetUI project:
> +                    <code>ant -f &lt;beehive-root>/beehive-
> imports.xml</code> and provide a fully-qualified web project root
> directory
> +                    named <code>controls_tutorial</code>.  Note,
> <code>&lt;beehive-root></code> is the directory that contains a
> +                    Beehive distribution; a typical value might be
> <code>/apache/apache-beehive-1.0</code>.</li>
>                  <li>Before continuing, confirm that the following
> directory structure exists:</li>
>                  </ol>
>                  <source>
> -/
>      beehive_projects/
>          controls_tutorial/
> -          Controller.java
> -          index.jsp
> -          resources/
> -          WEB-INF/
> +            web/
> +                Controller.java
> +                index.jsp
> +                resources/
> +                WEB-INF/
> +            build.properties
> +            build.xml
>                  </source>
>                  <p>
>                  Note, this directory structure is just an example;
you
> are free to put the <code>controls_tutorial</code>
> @@ -64,28 +71,29 @@
>              <section id="setup_configure_properties">
>                  <title>Configure Build Properties</title>
>                  <p>
> -                The <code>WEB-INF/src/build.properties</code> file
> contains several project-related properties that must
> +                The <code>build.properties</code> file contains
several
> project-related properties that must
>                  be set in order to build the web application.
> Specifically, the paths to your Beehive distribution and
>                  to the JSP / Servlet API JARs for your application
> container must be set.  The following steps will set these properties
>                  for the <code>controls_tutorial</code> webapp.
>                  </p>
>                  <ol>
> -                <li>Open the file <code>controls_tutorial/WEB-
> INF/src/build.properties</code> in a text editor.</li>
> +                <li>Open the file
> <code>controls_tutorial/build.properties</code> in a text editor.</li>
>                  <li>Edit the <code>beehive.home</code> property so it
> points to the top-level folder of your Beehive distribution.</li>
>                  <li>Edit the <code>context.path</code> to use the
value
> <code>controls_tutorial</code>.</li>
>                  </ol>
>                  <note>
>                  The <code>context.path</code> property determines
both
> (1) the name of the application WAR file and (2) the application URL.
>                  <br/><br/>
> -                If <code>context.path=fooWebApp</code>, then the
> following WAR file will be produced:
> +                If <code>context.path=controls_tutorial</code>, then
the
> following WAR file will be produced:
>                  <br/><br/>
> -
>
&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>fooWebApp</code></strong><code>.wa
r<
> /code>
> +
>
&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>controls_tutorial</code></strong><
co
> de>.war</code>
>                  <br/><br/>
>                  and the following URL will invoke the web
application:
>                  <br/><br/>
> -
>
&nbsp;&nbsp;&nbsp;&nbsp;<code>http://someapplicationserver/</code><stron
g>
> <code>fooWebApp</code></strong>
> +
>
&nbsp;&nbsp;&nbsp;&nbsp;<code>http://someapplicationserver/</code><stron
g>
> <code>controls_tutorial</code></strong>
>                  </note>
> -                <p>For example, if your Beehive distribution is
located
> in <code>/apache/apache-beehive-1.0</code>,
> +                <p>
> +                For example, if your Beehive distribution is located
in
> <code>/apache/apache-beehive-1.0</code>,
>                  then your <code>build.properties</code> file would
appear
> as follows.</p>
>                  <source>
>  beehive.home=<strong>/apache/apache-beehive-1.0</strong>
> @@ -94,10 +102,13 @@
> 
>  context.path=<strong>controls_tutorial</strong>
>                  </source>
> -                <note>Properties files should use the '/' character
to
> separate drive, directory, and file names.</note>
> +                <note>
> +                Properties files should use the '/' character to
separate
> drive, directory, and file names.
> +                </note>
>                  <p>
> -                If you are using an application container other than
> Tomcat, be sure to set the <code>servlet-api.jar</code> and <code>jsp-
> api.jar</code> properties
> -                to reference the JAR your server provides which
contains
> the JSP and Servlet API classes.
> +                If you are using an application container other than
> Tomcat, be sure to set the <code>servlet-api.jar</code>
> +                and <code>jsp-api.jar</code> properties to reference
the
> JAR your server provides which contains the JSP
> +                and Servlet API classes.
>                  </p>
>              </section>
>              <section id="setup_add_control_files">
> @@ -105,16 +116,17 @@
>                  <p>
>                  This tutorial uses a sample Hello World control that
is
> contained in
>
<strong><code>&lt;BeehiveDistribution>/samples/controls-
> blank/src/pkg</code></strong>.  Copy the <code>pkg</code>
> -                sub-directory from this path into the directory
> <strong><code>controls_tutorial/WEB-INF/src</code></strong>.
> +                sub-directory from this path into the directory
> <strong><code>controls_tutorial/src</code></strong>.
> +                </p>
> +                <p>
> +                Now, confirm that in addition to the files described
> above that the following directories and files exist:
>                  </p>
> -                <p>Now, confirm that the following directories and
files
> exist:</p>
>                  <source>
>  controls_tutorial/
> -    WEB-INF/
> -        src/
> -            pkg/
> -                Hello.java
> -                HelloImpl.java</source>
> +    src/
> +        pkg/
> +            Hello.java
> +            HelloImpl.java</source>
>              </section>
>              <section id="setup_start_server">
>                  <title>Start the Server</title>
> @@ -246,11 +258,11 @@
>              <section id="create_build_deploy">
>                  <title>Compile and Deploy the Web Application</title>
>                  <p>You are now ready to compile the page flow and
deploy
> it to Tomcat.</p>
> -                <p>The following Ant command assumes that you are in
the
> <code>controls_tutorial/WEB-INF/src</code> directory.  At the command
> prompt, enter:</p>
> -                <source>
> -  ant clean build war</source>
>                  <p>
> -                This will build the webapp by running the Beehive
> annotation processors and will produce class files in <code>WEB-
> INF/classes</code>.
> +                The following Ant command assumes that you are in the
> <code>controls_tutorial</code> directory.  At the command prompt,
> enter:</p>
> +                <source>ant clean build war</source>
> +                <p>
> +                This will build the webapp by running the Beehive
> annotation processors and will produce class files in <code>WEB-
> INF/classes</code>.
>                  Now, the application is ready to deploy to your
server.
> On Tomcat, copy the WAR file into Tomcat's
> <code>$CATALINA_HOME/webapps</code>
>                  directory.</p>
>                  <p>On Windows:</p>
> @@ -266,7 +278,9 @@
>              <section id="create_run">
>                  <title>Test the Control</title>
>                  <p>Visit the following address in a web browser:</p>
> -                <p class="quote"><a class="fork"
>
href="http://localhost:8080/controls_tutorial/begin.do">http://localhost
:8
> 080/controls_tutorial/begin.do</a></p>
> +                <p class="quote">
> +                    <a class="fork"
>
href="http://localhost:8080/controls_tutorial/begin.do">http://localhost
:8
> 080/controls_tutorial/begin.do</a>
> +                </p>
>                  <p>This will render the <code>index.jsp</code>
page.</p>
>                  <p>Note the message on the page: "hello!" which is
> provided by <code>Hello</code> control.</p>
>              </section>
> 
> Modified:
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/p
> rojects.xml
> URL:
>
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/doc
um
>
entation/content/xdocs/netui/projects.xml?rev=280193&r1=280192&r2=280193
&v
> iew=diff
>
========================================================================
==
> ====
> ---
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/p
> rojects.xml (original)
> +++
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/p
> rojects.xml Sun Sep 11 15:38:28 2005
> @@ -298,10 +298,10 @@
>              <table>
>
<tr><th>Name</th><th>Location</th><th>Required</th></tr>
>                <tr>
> -                  <td>beehive-netui-validator-
> rules.xml</td><td><code>&lt;beehive-root&gt;/samples/netui-blank/WEB-
> INF/</code></td><td>Yes</td>
> +                  <td>beehive-netui-validator-
>
rules.xml</td><td><code>&lt;beehive-root&gt;/samples/netui-blank/web/WEB
-
> INF/</code></td><td>Yes</td>
>                </tr>
>                <tr>
> -                  <td>validator-rules.xml</td><td><code>&lt;beehive-
> root&gt;/samples/netui-blank/WEB-INF/</code></td><td>Yes</td>
> +                  <td>validator-rules.xml</td><td><code>&lt;beehive-
> root&gt;/samples/netui-blank/web/WEB-INF/</code></td><td>Yes</td>
>                </tr>
>                <tr>
>                    <td>beehive-netui-config.xml</td>
> 
> Modified:
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/s
> ample_netui-blank.xml
> URL:
>
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/doc
um
> entation/content/xdocs/netui/sample_netui-
> blank.xml?rev=280193&r1=280192&r2=280193&view=diff
>
========================================================================
==
> ====
> ---
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/s
> ample_netui-blank.xml (original)
> +++
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/s
> ample_netui-blank.xml Sun Sep 11 15:38:28 2005
> @@ -1,6 +1,6 @@
>  <?xml version="1.0" encoding="UTF-8"?>
>  <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN"
> -    "http://forrest.apache.org/dtd/document-v20.dtd">
> +                          "http://forrest.apache.org/dtd/document-
> v20.dtd">
>  <document>
>      <header>
>          <title>NetUI Project Template</title>
> @@ -9,89 +9,105 @@
>          <section id="intro">
>              <title>Introduction</title>
>              <p>
> -            Use the NetUI application template (located at
> <code>&lt;BeehiveRoot>/samples/netui-blank</code>) as a
> -            starting point for building your own NetUI applications.
> +            NetUI enabled web applications require a set of JARs, XML
> configuration files, and <code>web.xml</code> entries.
> +            In order to make it easy to get started with a NetUI web
> application, the <code>samples/netui-blank</code> project
> +            template is available in the Beehive distribution.  Use
this
> as a starting point for building new NetUI-enabled
> +            applications.  This document describes how to build a new
> NetUI-enabled application from the <code>netui-blank</code>
> +            project template.
>              </p>
>              <note>
> -            &lt;BeehiveRoot> refers to the top-level directory of
your
> Beehive installation.  A typical value for &lt;BeehiveRoot>
> -            would be <code>/apache/apache-beehive-1.0</code>.
> +            In the documentation below, &lt;beehive-root> refers to
the
> top-level directory of your local Beehive installation.
> +            A typical value for &lt;beehive-root> would be
> <code>/apache/apache-beehive-1.0</code>.
>              </note>
> -            <p>
> -            The template contains everything needed in a basic NetUI
> application, except for the runtime and &lt;netui&gt; tag library
> -            JAR files. This topic explains how to add those JAR files
and
> get the template up and running.
> -            </p>
>          </section>
>          <section id="using">
>              <title>Using the NetUI Webapp Template</title>
>              <p>
>              The following instruction assume that you have completed
all
> of required and optional steps in the Beehive set up procedure at
> -            <a href="site:../setup">Installation and Setup</a>.
> +            <a href="site:setup">Installation and Setup</a>.
>              </p>
>              <p>
> -            To use the template, follow these steps:
> +            To use the <code>netui-blank</code> template, follow
these
> steps:
>              </p>
> -            <section id="copy_rename">
> -                <title>Copy and Rename the Template Folder</title>
> +            <section id="copyAndRename">
> +                <title>Create a New Webapp</title>
>                  <p>
> -                Copy the folder <code>&lt;BeehiveRoot>/samples/netui-
> blank</code> to your development directory.
> +                A new NetUI web project can be created by running the
> following Ant command from <code>&lt;beehive-root</code>:
>                  </p>
> +                <source>ant -f beehive-imports.xml
> new.netui.webapp</source>
>                  <p>
> -                Below we assume that you have copied <code>netui-
> blank</code> into the folder
> <strong><code>/myDevelopmentDirectory</code></strong>.
> +                This will prompt you for a fully-qualified path for
your
> web project.  For example, the following path
> +                <code>/projects/fooWeb</code> would create a project
> layout similar to that described
> +                <a href="site:sourceOut">here</a>.
> +                This project will include the runtime, configuration
> files / entries, and a basic Ant build.xml file.
> +                The description below assumes that you have created
the
> NetUI-enabled web project <code>fooWeb</code> under a
> +                <code>projects/</code> directory.
>                  </p>
> -                <source>/myDevelopmentDirectory/netui-blank</source>
> -                <p>
> -                Rename <code>netui-blank</code> to something more
> appropriate to your application. Below we assume that <code>netui-
> blank</code> has been
> -                renamed as
> <strong><code>myWebApplication</code></strong>.
> -                </p>
> -
<source>/myDevelopmentDirectory/myWebApplication</source>
>              </section>
> -            <section id="edit_properties_file"><title>Edit the
> <code>build.properties</code> File</title>
> -                <p>
> -                In this section you will edit the
> <code>build.properties</code> file -- the file that sets the
build-related
> -                properties for your web application.
> -                </p>
> +            <section id="configureProperties">
> +                <title>Configure the Webapp's Build
Properties</title>
>                  <p>
> -                Open the file
> <code>/myDevelopmentDirectory/myWebApplication/WEB-
> INF/src/build.properties</code> in a text editor.
> +                In this section you will edit the
> <code>build.properties</code> file in order to set build-related
> +                paths and values for your web project.
>                  </p>
>                  <p>
> -                Edit the <code>beehive.home</code> property so that
it
> points to the top-level folder of your beehive installation.
> -                </p>
> +                Open the file
> <code>/projects/fooWeb/build.properties</code> in a text editor and
edit
> the following
> +                properties:
> +                </p>
> +                <ul>
> +                <li>Set the <code>beehive.home</code> property to
point
> to the top-level folder of your Beehive installation.</li>
> +                <li>
> +                Set the <code>context.path</code> property to some
value
> that is appropriate to your web application.  This
> +                value is used when the web-project is built into a
> <code>.war</code> archive.  When deploying the
> +                <code>.war</code> archive, it also often determines
> thecontext path for the web project when deployed to the server.
> +                </li>
> +                </ul>
>                  <p>
> -                Edit the <code>context.path</code> property to some
value
> that is appropriate to your web application.
> -                </p>
> -                <p>
> -                For example, if you beehive installation resides at
> <code>/apache/apache-beehive-1.0</code>, then your
> -                <code>build.properties</code> file would appear as
> follows.
> -                </p>
> -                <p>
> -                <strong>Note:</strong> the value of
> <code>&lt;SomeContext></code> will determine the web application's URL
> address.
> +                For example, if Beehive is installed at
> <code>/apache/apache-beehive-1.0</code>, and you created a project
named
> +                <code>fooWeb</code> then your
> <code>build.properties</code> file might appear as follows:
>                  </p>
>  <source>beehive.home=<strong>/apache/apache-beehive-1.0</strong>
> 
>  servlet-api.jar=${os.CATALINA_HOME}/common/lib/servlet-api.jar
>  jsp-api.jar=${os.CATALINA_HOME}/common/lib/jsp-api.jar
> 
> -context.path=<strong>&lt;SomeContext></strong></source>
> +context.path=<strong>fooWeb</strong></source>
>                  <note>
>                  Properties files should use the '/' character to
separate
> drive, directory, and file names.
>                  </note>
> +                <note>
> +                This <code>.properties</code> file also assumes that
you
> are using Tomcat as your Servlet container.
> +                If you are not using Tomcat, set the paths to the
Servlet
> and JSP API classes appropriately for your
> +                container.  In some cases, these may point to the
same
> JAR.
> +                </note>
>              </section>
>              <section id="build">
> -                <title>Build the Template Web App</title>
> +                <title>Build the Webapp</title>
> +                <p>
> +                By default, the build associated with a new
NetUI-enabled
> webapp stores the Ant <code>build.xml</code> file
> +                in the project's root directory; in the example
above,
> this is the <code>projects/fooWeb</code> directory.
> +                </p>
> +                <p>
> +                To build the webapp, run <code>ant build</code>.
This
> will create a <code>build/</code>
> +                directory into which the webapp's resources are
copied
> and Java source files are compiled.  This
> +                <code>build</code> directory will be archived when
> creating a <code>.war</code> file.  It can also
> +                be deployed, exploded directly to the server.
> +                </p>
> +                <p>
> +                To clean the webapp, run <code>ant clean</code>.
> +                </p>
>                  <p>
> -                To build the web app, run the following Ant command.
> This Ant command will delete any build artifacts in
> -                the <code>WEB-INF/classes</code> directory, compile
the
> web application source, and archive the result as a WAR
> -                file.  The WAR file will be saved at
> <code>/myDevelopmentmentDirectory/</code>.  The name of the WAR file
> -                will be <code>&lt;SomeContext>.war</code>.  The
following
> command should be exuecuted from the web project's
> -                WEB-INF/src directory where the Ant build files are
> stored:
> +                To create a <code>.war</code> file, run <code>ant
> war</code>.
>                  </p>
> -<source>ant clean build war</source>
> +                <p>
> +                To update the JSPs when doing iterative development,
run
> <code>ant copy.jsps</code>.
> +                </p>
>              </section>
> -            <section id="deploy_run">
> -                <title>To Deploy and Run the Template Web App</title>
> +            <section id="deployAndRun">
> +                <title>Deploy and Run the Web App</title>
>                  <p>
>                  If you are using Tomcat, the web application can be
> deployed by copying the built <code>.war</code> file
> -                from
> <code>webDevelopmentDirectory/&lt;SomeContext>.war</code> to Tomcat's
> <code>webapps</code> directory.
> +                from <code>projects/fooWeb/fooWeb.war</code> to
Tomcat's
> <code>webapps</code> directory.
>                  </p>
>                  <p>
>                  If you are using a different Servlet container,
follow
> your container's deployment instructions for deploying
> @@ -99,7 +115,7 @@
>                  </p>
>                  <p>
>                  Once the web application is deployed, you can run
your
> web application by accessing the following URL from
> -                a browser:
> http://localhost:8080/<strong>&lt;SomeContext></strong>/
> +                a browser:
> http://localhost:8080/<strong>&lt;fooWeb</strong>/
>                  </p>
>              </section>
>          </section>
> @@ -107,7 +123,7 @@
>      <footer>
>          <legal>
>          Java, J2EE, and JCP are trademarks or registered trademarks
of
> Sun Microsystems, Inc. in the United States and other
> -        countries.<br/> &copy; 2004, Apache Software Foundation
> +        countries.<br/> &copy; 2004-2005, Apache Software Foundation
>          </legal>
>      </footer>
>  </document>
> 
> Modified:
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/t
> utorial_pageflow.xml
> URL:
>
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/doc
um
>
entation/content/xdocs/netui/tutorial_pageflow.xml?rev=280193&r1=280192&
r2
> =280193&view=diff
>
========================================================================
==
> ====
> ---
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/t
> utorial_pageflow.xml (original)
> +++
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui
/t
> utorial_pageflow.xml Sun Sep 11 15:38:28 2005
> @@ -63,21 +63,22 @@
>                  </p>
>                  <ol>
>                  <li>Create a directory <code>/beehive_projects</code>
(on
> Windows, this would be <code>C:\beehive_projects</code>).</li>
> -                <li>Copy the folder
> <code>&lt;BeehiveDistribution>/samples/netui-blank</code> into
> -                    <code>/beehive_projects</code> where
> <code>&lt;BeehiveDistribution></code> is the directory that contains
your
> -                    unzipped copy of a Beehive distribution.  A
typical
> value might be <code>/apache/apache-beehive-1.0</code>.)</li>
> -                <li>Rename the folder
>
<code>/beehive_projects/</code><strong><code>netui-blank</code></strong>
> to
> -
>
<code>/beehive_projects/</code><strong><code>pageflow_tutorial</code></s
tr
> ong></li>
> +                <li>Run the Ant target to create a new NetUI project:
> +                    <code>ant -f &lt;beehive-root>/beehive-
> imports.xml</code> and provide a fully-qualified web project root
> directory
> +                    named <code>pageflow_tutorial</code>.  Note,
> <code>&lt;beehive-root></code> is the directory that contains a
> +                    Beehive distribution; a typical value might be
> <code>/apache/apache-beehive-1.0</code>.</li>
>                  <li>Before continuing, confirm that the following
> directory structure exists:</li>
>                  </ol>
>                  <source>
> -/
>      beehive_projects/
>          pageflow_tutorial/
> -          Controller.java
> -          index.jsp
> -          resources/
> -          WEB-INF/
> +            web/
> +                Controller.java
> +                index.jsp
> +                resources/
> +                WEB-INF/
> +            build.properties
> +            build.xml
>  </source>
>                  <p>
>                  Note, this directory structure is just an example;
you
> are free to put the <code>pageflow_tutorial</code>
> @@ -88,26 +89,26 @@
>              <section id="setup_configure_properties">
>                  <title>Configure Build Properties</title>
>                  <p>
> -                The <code>WEB-INF/src/build.properties</code> file
> contains several project-related properties that must
> +                The <code>build.properties</code> file contains
several
> project-related properties that must
>                  be set in order to build the web application.
> Specifically, the paths to your Beehive distribution and
>                  to the JSP / Servlet API JARs for your application
> container must be set.  The following steps will set these properties
>                  for the <code>pageflow_tutorial</code> webapp.
>                  </p>
>                  <ol>
> -                <li>Open the file <code>pageflow_tutorial/WEB-
> INF/src/build.properties</code> in a text editor.</li>
> +                <li>Open the file
> <code>pageflow_tutorial/build.properties</code> in a text editor.</li>
>                  <li>Edit the <code>beehive.home</code> property so it
> points to the top-level folder of your Beehive distribution.</li>
>                  <li>Edit the <code>context.path</code> to use the
value
> <code>pageflow_tutorial</code>.</li>
>                  </ol>
>                  <note>
>                  The <code>context.path</code> property determines
both
> (1) the name of the application WAR file and (2) the application URL.
>                  <br/><br/>
> -                If <code>context.path=fooWebApp</code>, then the
> following WAR file will be produced:
> +                If <code>context.path=pageflow_tutorial</code>, then
the
> following WAR file will be produced:
>                  <br/><br/>
> -
>
&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>fooWebApp</code></strong><code>.wa
r<
> /code>
> +
>
&nbsp;&nbsp;&nbsp;&nbsp;<strong><code>pageflow_tutorial</code></strong><
co
> de>.war</code>
>                  <br/><br/>
>                  and the following URL will invoke the web
application:
>                  <br/><br/>
> -
>
&nbsp;&nbsp;&nbsp;&nbsp;<code>http://someapplicationserver/</code><stron
g>
> <code>fooWebApp</code></strong>
> +
>
&nbsp;&nbsp;&nbsp;&nbsp;<code>http://someapplicationserver/</code><stron
g>
> <code>pageflow_tutorial</code></strong>
>                  </note>
>                  <p>For example, if your Beehive distribution is
located
> in <code>/apache/apache-beehive-1.0</code>,
>                  then your <code>build.properties</code> file would
appear
> as follows.</p>
> @@ -119,8 +120,9 @@
>  context.path=<strong>pageflow_tutorial</strong></source>
>                  <note>Properties files should use the '/' character
to
> separate drive, directory, and file names.</note>
>                  <p>
> -                If you are using an application container other than
> Tomcat, be sure to set the <code>servlet-api.jar</code> and <code>jsp-
> api.jar</code> properties
> -                to reference the JAR your server provides which
contains
> the JSP and Servlet API classes.
> +                If you are using an application container other than
> Tomcat, be sure to set the <code>servlet-api.jar</code> and
> +                <code>jsp-api.jar</code> properties to reference the
JAR
> your server provides which contains the JSP and Servlet
> +                API classes.
>                  </p>
>              </section>
>              <section id="setup_start_server">
> @@ -275,8 +277,7 @@
>              <section id="create_build_deploy">
>                  <title>Compile and Deploy the Web Application</title>
>                  <p>You are now ready to compile the page flow and
deploy
> it to Tomcat.</p>
> -                <p>The following Ant command assumes that you are in
the
> <code>pageflow_tutorial/WEB-INF/src</code>
> -                   directory.  At the command prompt, enter:</p>
> +                <p>The following Ant command assumes that you are in
the
> <code>pageflow_tutorial/</code> directory.  At the command prompt,
> enter:</p>
>                  <source>
>  ant clean build war
>  </source>
> @@ -307,7 +308,7 @@
>              <title>Step 3: Navigation</title>
>              <section id="navigate_create_page">
>                  <title>Create a Destination JSP</title>
> -                <p>In the directory <code>pageflow_tutorial</code>,
> create a file named <code>page2.jsp</code>.</p>
> +                <p>In the directory
<code>pageflow_tutorial/web</code>,
> create a file named <code>page2.jsp</code>.</p>
>                  <p>Edit page2.jsp so it appears as follows.</p>
>                  <p><strong><code>page2.jsp</code></strong></p>
>                  <source><![CDATA[
> @@ -330,7 +331,7 @@
>              <section id="navigate_create_link">
>                  <title>Create a Link to the Destination Page</title>
>                  <p>In this step you will create a link from the JSP,
> <code>index.jsp</code> to a new Simple Action that you will add to the
> controller class.</p>
> -                <p>Open the file
> <code>pageflow_tutorial/index.jsp</code>.</p>
> +                <p>Open the file
> <code>pageflow_tutorial/web/index.jsp</code>.</p>
>                  <p>Edit <code>index.jsp</code> so it appears as
follows.
> The code to add appears in bold type.</p>
>          <p><strong><code>index.jsp</code></strong></p>
>          <source>
> @@ -356,7 +357,7 @@
>              </section>
>              <section id="navigate_add_action">
>                  <title>Add a Simple Action to Handle the Link</title>
> -                <p>Open the file
> <code>pageflow_tutorial/Controller.java</code>.</p>
> +                <p>Open the file
> <code>pageflow_tutorial/web/Controller.java</code>.</p>
>                  <p>Edit <code>Controller.java</code> so it appears as
> follows.  Don't forget the comma after the first
> <code>Jpf.SimpleAction(...)</code> element!</p>
>                  <p><strong><code>Controller.java</code></strong></p>
>                  <source>
> @@ -405,7 +406,7 @@
>                  <title>Create a Submission Form</title>
>                  <p>This step illustrates the use of custom tags to
render
> an HTML form tag and link it to an Action.
>                      In a later step, the new Action will be added to
the
> controller class to handle the data submission.</p>
> -                <p>Edit the file
<code>pageflow_tutorial/page2.jsp</code>
> so it appears as follows.</p>
> +                <p>Edit the file
> <code>pageflow_tutorial/web/page2.jsp</code> so it appears as
follows.</p>
>                  <p><strong><code>page2.jsp</code></strong></p>
>                  <source>
>  &lt;%@ page language="java" contentType="text/html;charset=UTF-8"%>
> @@ -435,9 +436,9 @@
>              <section id="forms_create_formbean">
>                  <title>Create a Server Side Representation of the
> Submission Form (a.k.a. Create a Form Bean)</title>
>                  <p>In this step you will create a Java class that
> represents the submission form created in the previous task.  When the
> form data is submitted, the Java class will be instantiated, and the
form
> data will be loaded into the members of the Java class.</p>
> -                <p>In the directory <code>pageflow_tutorial/WEB-
> INF/src</code> create a directory named
> <strong><code>forms</code></strong>.</p>
> -                <p>In the directory <code>pageflow_tutorial/WEB-
> INF/src/forms</code> create a JAVA file named
> <strong><code>ProfileForm.java</code></strong>.</p>
> -                <p>Edit <code>pageflow_tutorial/WEB-
> INF/src/forms/ProfileForm.java</code> so it appears as follows.</p>
> +                <p>In the directory
<code>pageflow_tutorial/src</code>
> create a directory named <strong><code>forms</code></strong>.</p>
> +                <p>In the directory
> <code>pageflow_tutorial/src/forms</code> create a JAVA file named
> <strong><code>ProfileForm.java</code></strong>.</p>
> +                <p>Edit
> <code>pageflow_tutorial/src/forms/ProfileForm.java</code> so it
appears as
> follows.</p>
> 
>                  <p><strong><code>ProfileForm.java</code></strong></p>
>                      <source>
> @@ -471,7 +472,7 @@
>                  <title>Edit the Controller Class to Handle the
Submitted
> Data</title>
>                  <p>Now you will add a new Action and use your new
Form
> Bean to handle the data
>                  submitted from the HTML form.</p>
> -                <p>Open the file
> <code>pageflow_tutorial/Controller.java</code>
> +                <p>Open the file
> <code>pageflow_tutorial/web/Controller.java</code>
>                  </p>
>                  <p>Edit <code>Controller.java</code> so it appears as
> follows.  Code to add appears in bold type.</p>
> 
> @@ -536,7 +537,7 @@
>              <section id="create_jsp">
>                  <title>Create a JSP to Display Submitted Data</title>
>                  <p>In this step you will create a new JSP to present
the
> results from processing the data submission.</p>
> -                <p>In the directory <code>pageflow_tutorial</code>
create
> a file named
> +                <p>In the directory
<code>pageflow_tutorial/web</code>
> create a file named
>                      <strong><code>displayData.jsp</code></strong>.
</p>
>                  <p>Edit <code>displayData.jsp</code> so it appears as
> follows.</p>
> 
> @@ -612,7 +613,7 @@
>                      for the name field of the form so that it will
(1) be
> a required field and
>                      (2) have a maximum length of 30 characters. The
age
> field will also be required and must have a value
>                      in the range 0 to 130.</p>
> -                <p>Open the file
> <code>pageflow_tutorial/Controller.java</code></p>
> +                <p>Open the file
> <code>pageflow_tutorial/web/Controller.java</code></p>
>                  <p>
>                      Edit the
>                      <a
>
href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annota
ti
> ons/Jpf.Action.html">
> @@ -659,7 +660,7 @@
>              <section id="validation_display_errors">
>                  <title>Modify the JSP to Display Validation
> Errors</title>
>                  <p>Add the <code>&lt;netui:error></code> tag to
display
> validation error messages on the page.</p>
> -                <p>Edit the file
<code>pageflow_tutorial/page2.jsp</code>
> so it appears as follows.</p>
> +                <p>Edit the file
> <code>pageflow_tutorial/web/page2.jsp</code> so it appears as
follows.</p>
>                  <p><strong><code>page2.jsp</code></strong></p>
>                  <source>&lt;%@ page language="java"
> contentType="text/html;charset=UTF-8"%>
>  &lt;%@ taglib uri="http://beehive.apache.org/netui/tags-html-1.0"
> prefix="netui"%>
> @@ -706,12 +707,10 @@
>              <title>Step 7: Collect Data from a Nested Page
Flow</title>
>              <section id="nested_link">
>                  <title>Link to the Nested Page Flow</title>
> -                <p>In this task you will modify the HTML form tag to
(1)
> add a new data field and (2)
> -                add a button linking to an
> -                    Action in a nested page flow. (Later you will
create
> the nested controller class
> -                     to handle the data collection.)</p>
> -                <p>Edit the file
<code>pageflow_tutorial/page2.jsp</code>
> so it
> -                    appears as follows. Code to add appears in
bold.</p>
> +                <p>
> +                In this task you will modify the HTML form tag to (1)
add
> a new data field and (2) add a button linking to
> +                an Action in a nested page flow. (Later you will
create
> the nested controller class to handle the data collection.)</p>
> +                <p>Edit the file
> <code>pageflow_tutorial/web/page2.jsp</code> so it appears as follows.
> Code to add appears in bold.</p>
>                  <p><strong><code>page2.jsp</code></strong></p>
>                  <source>&lt;%@ page language="java"
> contentType="text/html;charset=UTF-8"%>
>  &lt;%@ taglib uri="http://beehive.apache.org/netui/tags-html-1.0"
> prefix="netui"%>
> @@ -744,11 +743,14 @@
>              </section>
>              <section id="nested_update_formbean">
>                  <title>Update the Form Bean</title>
> -                <p>In this task you will update the Java class that
> represents the submission form with the
> -                    additional data field created in the previous
task.
> When the nested page flow returns,
> -                    the new member of the Form Bean class instance
can be
> loaded with the value collected.</p>
> -                <p>Edit <code>pageflow_tutorial/WEB-
> INF/src/forms/ProfileForm.java</code>
> -                    and add the following member variable and
> methods.</p>
> +                <p>
> +                In this task you will update the Java class that
> represents the submission form with the
> +                additional data field created in the previous task.
When
> the nested page flow returns,
> +                the new member of the Form Bean class instance can be
> loaded with the value collected.
> +                </p>
> +                <p>
> +                Edit
> <code>pageflow_tutorial/src/forms/ProfileForm.java</code> and add the
> following member variable and methods.
> +                </p>
>                  <p><strong><code>ProfileForm.java</code></strong></p>
>                  <source>
>      ...
> @@ -771,7 +773,7 @@
>                  <title>To Launch and Return from the Nested Page
> Flow</title>
>                  <p>In this task you will add Action methods: one to
> handle forwarding to the nested page flow and another to
>                      implement the return Action when the nested page
flow
> completes.</p>
> -                <p>Open the file
> <code>pageflow_tutorial/Controller.java</code></p>
> +                <p>Open the file
> <code>pageflow_tutorial/web/Controller.java</code></p>
>                  <p>Edit <code>Controller.java</code> so it appears as
> follows.  Code to add appears
>                      in bold type. Don't forget to add the
> <code>useFormBean</code> property to the
>                      <a
>
href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annota
ti
> ons/Jpf.Action.html">
> @@ -877,12 +879,14 @@
>                      field for the user's choice of sport activity.
The
> options to be displayed are
>                      declared as member data of this nested page flow.
> After the user confirms the
>                      data, the nested page flow returns a
> <code>String</code> to the main page flow.</p>
> -                <p>In the directory <code>pageflow_tutorial/</code>
> create a directory
> -                    named <strong><code>sports</code></strong>.</p>
> -                <p>In the directory
<code>pageflow_tutorial/sports</code>
> create a JAVA
> -                    file named
> <strong><code>SportsController.java</code></strong>.</p>
> -                <p>Edit
> <code>pageflow_tutorial/sports/SportsController.java</code> so it
> -                    appears as follows.</p>
> +                <p>
> +                In the directory <code>pageflow_tutorial/web</code>
> create a directory named <strong><code>sports</code></strong>.
> +                </p>
> +                <p>
> +                In the directory
> <code>pageflow_tutorial/web/sports</code> create a Java file named
> +                <strong><code>SportsController.java</code></strong>.
> +                </p>
> +                <p>Edit
> <code>pageflow_tutorial/web/sports/SportsController.java</code> so it
> appears as follows.</p>
> 
> 
> <p><strong><code>SportsController.java</code></strong></p>
>                  <source>
> @@ -956,7 +960,7 @@
>                  <title>To Present and Collect Data using a
Form</title>
>                  <p>This task illustrates the use of custom tags to
render
> a radio button group in an HTML form and
>                     link it to the nested page flow
> <code>selectSport</code> Action method.</p>
> -                <p>In the directory
> <code>pageflow_tutorial/sports</code>, create a file named
> <code>index.jsp</code>.</p>
> +                <p>In the directory
> <code>pageflow_tutorial/web/sports</code>, create a file named
> <code>index.jsp</code>.</p>
>                  <p>Edit index.jsp so it appears as follows.</p>
>                  <p><strong><code>index.jsp</code></strong></p>
>                  <source><![CDATA[
> @@ -992,8 +996,7 @@
>              </section>
>              <section id="nested_confirm_data">
>                  <title>Confirm the Selected Data</title>
> -                <p>In the directory
> <code>pageflow_tutorial/sports</code>, create
> -                    a file named <code>confirm.jsp</code>.</p>
> +                <p>In the directory
> <code>pageflow_tutorial/web/sports</code>, create a file named
> <code>confirm.jsp</code>.</p>
>                  <p>Edit confirm.jsp so it appears as follows.</p>
>                  <p><strong><code>confirm.jsp</code></strong></p>
>                  <source><![CDATA[
> @@ -1022,7 +1025,7 @@
>              <section id="nested_display_data">
>                  <title>Update the JSP to Display Submitted
Data</title>
>                  <p>In this step you will update the JSP to present
the
> results from processing the data submission.</p>
> -                <p>In the directory <code>pageflow_tutorial</code>
update
> the file named
> +                <p>In the directory
<code>pageflow_tutorial/web</code>
> update the file named
>                      <strong><code>displayData.jsp</code></strong> and
add
> code to display the additional data.
>                      The code to add appears in bold type.</p>
>                  <p>Edit <code>displayData.jsp</code> so it appears as
> follows.</p>
> @@ -1074,8 +1077,7 @@
>              <title>Step 8: Adding Actions to a Shared Flow</title>
>              <section id="sharedflow_page">
>                  <title>To Create a Common Destination JSP</title>
> -                <p>In the directory <code>pageflow_tutorial</code>,
> create a
> -                    file named <code>help.jsp</code>.</p>
> +                <p>In the directory
<code>pageflow_tutorial/web</code>,
> create a file named <code>help.jsp</code>.</p>
>                  <p>Edit help.jsp so it appears as follows.</p>
>                  <p><strong><code>help.jsp</code></strong></p>
>                  <source><![CDATA[
> @@ -1099,7 +1101,7 @@
>                  <title>To Make an Action available to multiple Page
> Flows</title>
>                  <p>In this task you will add a Simple Action to the
> existing Shared Flow.  The Action forwards to the
>                      help page created in the previous task and will
be
> available to multiple page flows in the application.</p>
> -                <p>Open the existing Shared Flow file
> <code>pageflow_tutorial/WEB-INF/src/shared/SharedFlow.java</code></p>
> +                <p>Open the existing Shared Flow file
> <code>pageflow_tutorial/src/shared/SharedFlow.java</code></p>
>                  <p>
>                      Edit the
>                      <a
>
href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annota
ti
> ons/Jpf.Controller.html">
> @@ -1130,7 +1132,7 @@
>                  <title>To Link a Page to the Shared Flow
Action</title>
>                  <p>In this task you will create a link from the JSP,
> <code>index.jsp</code> to the
>                      Shared Flow Action.</p>
> -                <p>Open the file
> <code>pageflow_tutorial/index.jsp</code>.</p>
> +                <p>Open the file
> <code>pageflow_tutorial/web/index.jsp</code>.</p>
>                  <p>Edit <code>index.jsp</code> so it appears as
follows.
> The code to add appears in bold type.</p>
>                  <p><strong><code>index.jsp</code></strong></p>
>                  <source>&lt;%@ page language="java"
> contentType="text/html;charset=UTF-8"%>
> 
> Modified:
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.
xm
> l
> URL:
>
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/doc
um
>
entation/content/xdocs/site.xml?rev=280193&r1=280192&r2=280193&view=diff
>
========================================================================
==
> ====
> ---
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.
xm
> l (original)
> +++
>
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.
xm
> l Sun Sep 11 15:38:28 2005
> @@ -21,7 +21,9 @@
>                      <pageflow_jspOverview_SimpleLinking
> href="#SimpleLinking" />
>                      <pageflow_jspOverview_StartingJSP
href="#StartingJSP"
> />
>                  </pageflow_jsp>
> -                <netuiProjects label="Project Model"
> href="netui/projects.html"/>
> +                <netuiProjects label="Project Model"
> href="netui/projects.html">
> +                    <sourceOut href="#projectLayoutSourceOut"/>
> +                </netuiProjects>
>                  <pageflow_altering label="Altering a Page Flow"
> href="netui/alteringPageFlow.html"/>
>              </netuiIntro>
>              <netuiBasic label="Basic Topics">
> 
> Modified: beehive/trunk/netui/test/dist-test/ant/testWebBuild.xml
> URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/test/dist-
> test/ant/testWebBuild.xml?rev=280193&r1=280192&r2=280193&view=diff
>
========================================================================
==
> ====
> --- beehive/trunk/netui/test/dist-test/ant/testWebBuild.xml (original)
> +++ beehive/trunk/netui/test/dist-test/ant/testWebBuild.xml Sun Sep 11
> 15:38:28 2005
> @@ -106,7 +106,7 @@
>           <deploy-netui webappDir="${webapp.dir}"/>
> 
>           <copy todir="${webapp.dir}/WEB-INF">
> -              <fileset dir="${dist.home}/samples/netui-blank/WEB-INF"
> includes="*.xml"/>
> +              <fileset
dir="${dist.home}/samples/netui-blank/web/WEB-INF"
> includes="*.xml"/>
>           </copy>
>      </target>
> 
> 
> Modified: beehive/trunk/user/beehive-imports.xml
> URL: http://svn.apache.org/viewcvs/beehive/trunk/user/beehive-
> imports.xml?rev=280193&r1=280192&r2=280193&view=diff
>
========================================================================
==
> ====
> --- beehive/trunk/user/beehive-imports.xml (original)
> +++ beehive/trunk/user/beehive-imports.xml Sun Sep 11 15:38:28 2005
> @@ -24,6 +24,7 @@
>  <project name="beehive-imports" default="" basedir=".">
> 
>      <property environment="os"/>
> +
>      <dirname property="this.dir" file="${ant.file.beehive-imports}"/>
> 
>      <path id="controls.dependency.path">
> @@ -74,10 +75,28 @@
>          </sequential>
>      </macrodef>
> 
> +    <target name="new.netui.webapp" description="Create a new NetUI-
> enabled Beehive webapp">
> +        <input message="Provide a fully-qualified web project path
(like
> c:\java\projects\fooWeb):" addproperty="webapp.dir"/>
> +
> +        <copy todir="${webapp.dir}">
> +            <fileset dir="${basedir}/samples/netui-blank">
> +                <include name="**/*"/>
> +            </fileset>
> +        </copy>
> +
> +        <echo>
> +Created a NetUI-enabled in ${webapp.dir}.
> +
> +Set the appropriate properties in ${webapp.dir}/build.properties.
> +
> +Then run "ant build" in ${webapp.dir} to copy the runtime JARs and
build
> the project.
> +        </echo>
> +    </target>
> +
>      <target name="usage" description="Print the usage for this
> build.xml">
>          <java fork="no" classname="org.apache.tools.ant.Main">
>              <arg line="-f ${ant.file} -projecthelp"/>
>          </java>
>      </target>
> 
> -</project>
> \ No newline at end of file
> +</project>
> 
> Modified: beehive/trunk/user/netui-blank/build.properties
> URL: http://svn.apache.org/viewcvs/beehive/trunk/user/netui-
> blank/build.properties?rev=280193&r1=280192&r2=280193&view=diff
>
========================================================================
==
> ====
> --- beehive/trunk/user/netui-blank/build.properties (original)
> +++ beehive/trunk/user/netui-blank/build.properties Sun Sep 11
15:38:28
> 2005
> @@ -1,9 +1,9 @@
>  #
>  #
>  #
> -beehive.home=../../../..
> +beehive.home=../..
> 
>  servlet-api.jar=${os.CATALINA_HOME}/common/lib/servlet-api.jar
>  jsp-api.jar=${os.CATALINA_HOME}/common/lib/jsp-api.jar
> 
> -context.path=netui-blank
> \ No newline at end of file
> +context.path=netui-blank
> 
> Modified: beehive/trunk/user/netui-blank/build.xml
> URL: http://svn.apache.org/viewcvs/beehive/trunk/user/netui-
> blank/build.xml?rev=280193&r1=280192&r2=280193&view=diff
>
========================================================================
==
> ====
> --- beehive/trunk/user/netui-blank/build.xml (original)
> +++ beehive/trunk/user/netui-blank/build.xml Sun Sep 11 15:38:28 2005
> @@ -20,74 +20,89 @@
>  <!--
>    An Ant build file for compiling a Beehive page flow web
application.
>  -->
> -<project name="Beehive/Samples/netui-blank" default="usage"
> basedir="../..">
> +<project name="Beehive/Samples/netui-blank" default="usage"
basedir=".">
> 
>      <property environment="os"/>
> -    <property file="${basedir}/WEB-INF/src/build.properties"/>
> +    <property file="${basedir}/build.properties"/>
> 
>      <import file="${beehive.home}/beehive-imports.xml"/>
>      <import file="${beehive.home}/ant/beehive-tools.xml"/>
> 
>      <property name="webapp.dir" location="${basedir}"/>
> +    <property name="build.dir" location="build"/>
> +    <property name="web.dir" location="web"/>
> +    <property name="src.dir" location="src"/>
> 
>      <property name="tmp.sourcegen.dir" value=".tmpbeansrc"/>
> 
>      <!-- Define the classpath used to build the webapp -->
> -    <path id="webapp.build.classpath">
> +    <path id="webapp.classpath">
>          <pathelement location="${servlet-api.jar}"/>
>          <pathelement location="${jsp-api.jar}"/>
> -        <pathelement location="${webapp.dir}/WEB-INF/classes"/>
> -        <fileset dir="${webapp.dir}/WEB-INF/lib">
> +        <pathelement location="${build.dir}/WEB-INF/classes"/>
> +        <fileset dir="${build.dir}/WEB-INF/lib">
>              <include name="*.jar"/>
>          </fileset>
>      </path>
> 
> -    <!-- Define the sourcepath used to build the webapp -->
> -    <path id="webapp.build.sourcepath">
> -        <pathelement location="${webapp.dir}"/>
> -        <pathelement location="${webapp.dir}/WEB-INF/src"/>
> -    </path>
> -
> -    <target name="deploy-beehive" description="Copy the Beehive page
flow
> and web service rutime into the target webapp">
> -        <deploy-netui webappDir="${webapp.dir}"/>
> -        <deploy-wsm webappDir="${webapp.dir}"/>
> +    <target name="deploy-beehive" description="Copy the Beehive Page
Flow
> rutime into the target webapp">
> +        <mkdir dir="${build.dir}"/>
> +        <deploy-netui webappDir="${build.dir}"/>
>      </target>
> 
>      <target name="build" depends="deploy-beehive" description="Build
the
> webapp">
>          <available property="webapp.dir.available"
file="${webapp.dir}"
> type="dir"/>
>          <fail unless="webapp.dir.available" message="Can't find the
> webapp directory ${webapp.dir}"/>
> 
> -        <!--
> -            this directory needs to get whacked before every build so
> -            that control interface repackagings don't cause stale
> -            files to be compiled
> -          -->
> -        <delete dir="${webapp.dir}/WEB-INF/${tmp.sourcegen.dir}"
> includeEmptyDirs="true"/>
> +        <copy todir="${build.dir}/">
> +            <fileset dir="${web.dir}">
> +                <exclude name="**/*.java"/>
> +            </fileset>
> +        </copy>
> 
> -        <mkdir dir="${webapp.dir}/WEB-INF/classes"/>
> +        <copy todir="${build.dir}/WEB-INF/classes">
> +            <fileset dir="${src.dir}/">
> +                <include name="sql/**"/>
> +                <include name="**/*.properties"/>
> +                <include name="**/*.xml"/>
> +            </fileset>
> +        </copy>
> 
>          <!-- compile XSDs -->
> -        <build-schemas srcdir="${webapp.dir}/WEB-INF/schemas"
> destdir="${webapp.dir}/WEB-INF/classes"/>
> +        <echo>Building XML Schemas</echo>
> +        <build-schemas srcdir="${basedir}/schemas"
> +                       destDir="${build.dir}/WEB-INF/classes"/>
> 
>          <!-- compile controls -->
> -        <build-controls srcdir="${webapp.dir}/WEB-INF/src"
> -                        destdir="${webapp.dir}/WEB-INF/classes"
> -                        tempdir="${webapp.dir}/WEB-
> INF/${tmp.sourcegen.dir}"
> -                        classpathref="webapp.build.classpath"/>
> +        <echo>Building Controls</echo>
> +        <build-controls srcdir="${basedir}/src"
> +                        destdir="${build.dir}/WEB-INF/classes"
> +                        tempdir="${build.dir}/WEB-
> INF/${tmp.sourcegen.dir}"
> +                        classpathRef="webapp.classpath"/>
> 
>          <!-- compile JPFs -->
> -        <build-pageflows webcontentdir="${webapp.dir}"
> -                         srcdir="${webapp.dir}"
> -
classoutputdir="${webapp.dir}/WEB-INF/classes"
> -                         tempdir="${webapp.dir}/WEB-
> INF/${tmp.sourcegen.dir}"
> -                         classpathref="webapp.build.classpath"
> -                         sourcepathref="webapp.build.sourcepath"/>
> +        <echo>Building Page Flows</echo>
> +        <build-pageflows srcdir="${web.dir}"
> +                         webcontentdir="${web.dir}"
> +
classoutputdir="${build.dir}/WEB-INF/classes"
> +                         tempdir="${build.dir}/WEB-
> INF/${tmp.sourcegen.dir}"
> +                         classpathref="webapp.classpath"/>
> 
>          <!-- copy resources -->
>          <echo>Copy all .properties and .xml files</echo>
> -        <copy todir="${webapp.dir}/WEB-INF/classes">
> -            <fileset dir="${webapp.dir}/WEB-INF/src"
> includes="**/*.properties"/>
> -            <fileset dir="${webapp.dir}/WEB-INF/src"
> includes="**/*.xml"/>
> +        <copy todir="${build.dir}/WEB-INF/classes">
> +            <fileset dir="${src.dir}" includes="**/*.properties"/>
> +            <fileset dir="${src.dir}" includes="**/*.xml"/>
> +        </copy>
> +    </target>
> +
> +    <target name="copy.jsps"
> +            description="When deploying an exploded webapp, this
target
> copies changed JSPs into the deployed directory">
> +        <copy todir="${build.dir}/">
> +            <fileset dir="${web.dir}">
> +                <exclude name="**/*.java"/>
> +                <exclude name="WEB-INF/**"/>
> +            </fileset>
>          </copy>
>      </target>
> 
> @@ -97,13 +112,12 @@
>      </target>
> 
>      <target name="war" description="Build a compressed WAR file that
can
> be deployed to an application container">
> -        <property name="archive.dir" value="${webapp.dir}/.."/>
> +        <property name="archive.dir" value="${basedir}"/>
> 
>          <!-- this does *not* exclude source from the archive -->
> -        <war destfile="${archive.dir}/${context.path}.war"
> webxml="${webapp.dir}/WEB-INF/web.xml">
> -            <fileset dir="${webapp.dir}">
> +        <war destfile="${archive.dir}/${context.path}.war"
> webxml="${build.dir}/WEB-INF/web.xml">
> +            <fileset dir="${build.dir}">
>                  <exclude name="WEB-INF/web.xml"/>
> -                <exclude name="WEB-INF/src/**"/>
>              </fileset>
>          </war>
>      </target>
>