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><BeehiveDistribution>/samples/netui-blank</code> into
> - <code>/beehive_projects</code> where
> <code><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 <beehive-root>/beehive-
> imports.xml</code> and provide a fully-qualified web project root
> directory
> + named <code>controls_tutorial</code>. Note,
> <code><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/>
> -
>
<strong><code>fooWebApp</code></strong><code>.wa
r<
> /code>
> +
>
<strong><code>controls_tutorial</code></strong><
co
> de>.war</code>
> <br/><br/>
> and the following URL will invoke the web
application:
> <br/><br/>
> -
>
<code>http://someapplicationserver/</code><stron
g>
> <code>fooWebApp</code></strong>
> +
>
<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><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><beehive-root>/samples/netui-blank/WEB-
> INF/</code></td><td>Yes</td>
> + <td>beehive-netui-validator-
>
rules.xml</td><td><code><beehive-root>/samples/netui-blank/web/WEB
-
> INF/</code></td><td>Yes</td>
> </tr>
> <tr>
> - <td>validator-rules.xml</td><td><code><beehive-
> root>/samples/netui-blank/WEB-INF/</code></td><td>Yes</td>
> + <td>validator-rules.xml</td><td><code><beehive-
> root>/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><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>
> - <BeehiveRoot> refers to the top-level directory of
your
> Beehive installation. A typical value for <BeehiveRoot>
> - would be <code>/apache/apache-beehive-1.0</code>.
> + In the documentation below, <beehive-root> refers to
the
> top-level directory of your local Beehive installation.
> + A typical value for <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 <netui> 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><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><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><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><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><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/<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><SomeContext></strong>/
> + a browser:
> http://localhost:8080/<strong><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/> © 2004, Apache Software Foundation
> + countries.<br/> © 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><BeehiveDistribution>/samples/netui-blank</code> into
> - <code>/beehive_projects</code> where
> <code><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 <beehive-root>/beehive-
> imports.xml</code> and provide a fully-qualified web project root
> directory
> + named <code>pageflow_tutorial</code>. Note,
> <code><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/>
> -
>
<strong><code>fooWebApp</code></strong><code>.wa
r<
> /code>
> +
>
<strong><code>pageflow_tutorial</code></strong><
co
> de>.war</code>
> <br/><br/>
> and the following URL will invoke the web
application:
> <br/><br/>
> -
>
<code>http://someapplicationserver/</code><stron
g>
> <code>fooWebApp</code></strong>
> +
>
<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>
> <%@ 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><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><%@ page language="java"
> contentType="text/html;charset=UTF-8"%>
> <%@ 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><%@ page language="java"
> contentType="text/html;charset=UTF-8"%>
> <%@ 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><%@ 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>
>