Author: steveh
Date: Fri Nov 12 07:29:29 2004
New Revision: 57528

Modified:
   incubator/beehive/site/build/site/pageflow/pageflow_overview.html
   
incubator/beehive/site/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
Log:
Fixes for BEEHIVE-75,76,77,78.


Modified: incubator/beehive/site/build/site/pageflow/pageflow_overview.html
==============================================================================
--- incubator/beehive/site/build/site/pageflow/pageflow_overview.html   
(original)
+++ incubator/beehive/site/build/site/pageflow/pageflow_overview.html   Fri Nov 
12 07:29:29 2004
@@ -291,24 +291,7 @@
 <a href="#introduction">Introduction</a>
 </li>
 <li>
-<a href="#Some+Page+Flow+Features">Some Page Flow Features</a>
-<ul class="minitoc">
-<li>
-<a href="#Declarative+Programming">Declarative Programming</a>
-</li>
-<li>
-<a href="#Page+Flows+are+Stateful">Page Flows are Stateful</a>
-</li>
-<li>
-<a href="#Shared+Flow">Shared Flow</a>
-</li>
-<li>
-<a href="#URL+Addressable+%5Btodo%2C+JIRA+82%5D">URL Addressable [todo, JIRA 
82]</a>
-</li>
-<li>
-<a href="#Struts+Integration">Struts Integration</a>
-</li>
-</ul>
+<a href="#Page+Flow+Features">Page Flow Features</a>
 </li>
 <li>
 <a href="#logical_flow">The Logical Flow</a>
@@ -330,38 +313,36 @@
     controls the user experience flow through an application.  In addition to 
allowing
     complex logic to dictate which pages are displayed, JPF technology helps 
decouple
     page authoring from application logic by preventing one JSP from directly 
referencing
-    another.
+    another.  It also allows for easy state management within a single Java 
class.
     </p>
 </div>
 
-<a name="N10016"></a><a name="Some+Page+Flow+Features"></a>
-<h3>Some Page Flow Features</h3>
-<div style="margin-left: 0 ; border: 2px">
-<p>Here are a few of the advantages of developing web applications with Page 
Flows.</p>
-<a name="N1001F"></a><a name="Declarative+Programming"></a>
-<h4>Declarative Programming</h4>
+<a name="N10016"></a><a name="Page+Flow+Features"></a>
+<h3>Page Flow Features</h3>
 <div style="margin-left: 0 ; border: 2px">
+<p>Page Flows make building Java web applications easy and intuitive.  When 
programming with Page Flows, the developer writes JAVA classes and JSP 
pages--that's it.  There is very little occasion to work with configuration 
files, or other components.  Page Flow programming also excels at separating 
presentation logic from data processing logic, resulting in uncluttered JSP 
code which is easy to understand and edit.  Data processing and the web 
application configurables are handled in a single Java class using a simple 
declarative programming model.</p>
+<p>
+<strong>Declarative Programming</strong>
+</p>
 <p>Many common web app programming tasks are accomplished through a 
declarative programming model using JSR 175 metadata annotations, a new feature 
in JKD5.  JSR 175 metadata annotations, "annotations" for short, are property 
setters for Java classes and methods, aliviating the need for independent 
configuration files. Navigation, exception handling, validation, and other 
tasks become configurable properties of a single Java class, the "controller" 
class that drives the web application.</p>
-</div>
-<a name="N10029"></a><a name="Page+Flows+are+Stateful"></a>
-<h4>Page Flows are Stateful</h4>
-<div style="margin-left: 0 ; border: 2px"></div>
-<a name="N10030"></a><a name="Shared+Flow"></a>
-<h4>Shared Flow</h4>
-<div style="margin-left: 0 ; border: 2px"></div>
-<a name="N10037"></a><a name="URL+Addressable+%5Btodo%2C+JIRA+82%5D"></a>
-<h4>URL Addressable [todo, JIRA 82]</h4>
-<div style="margin-left: 0 ; border: 2px"></div>
-<a name="N1003E"></a><a name="Struts+Integration"></a>
-<h4>Struts Integration</h4>
-<div style="margin-left: 0 ; border: 2px">
+<p>
+<strong>Page Flows are Stateful</strong>
+</p>
+<p>When a user enters a Page Flow (by calling an URL in the Page Flow's URL 
space), an instance of the Page Flow's controller class is created.  While the 
user is in the Page Flow, the controller class stores the accumulated session 
and user state. The methods within the class have access to the accumulated 
state, making for easy state management within the web application.  For 
example, suppose your web application calls for a multi-page registration, 
where the user moves from page to page filling out a user profile.  The 
controller class stores the user data as the user progresses through the 
registration and has access to the profile data as session state.  When the 
user leaves the Page Flow, the state is automatically cleaned up. </p>
+<p>
+<strong>Page Flows are Modular</strong>
+</p>
+<p>A single web application can have multiple Page Flows within it, allowing 
you to break up the application into separate, self-contained chunks of 
functionality.  For an example, see the <a href="../jpetstore.html">Petstore 
Sample</a>, which has different Page Flows for browsing the Petstore, buying 
products, and handling user accounts.</p>
+<p>Page Flow web applications also contain a global Page Flow, called the 
"shared flow", which is both a fallback handler for unhandled actions and 
exceptions and a place to store session state. An instance of the shared flow 
class is stored in the user session upon the first request to any Page Flow and 
remains until the session ends.  When an action is raised in a Page Flow, and 
that action is not handled by the Page Flow, the shared flow gets a chance to 
handle it. The same is true for an exception raised within a Page Flow: if it 
is unhandled in the Page Flow, the shared flow gets a chance to handle it.</p>
+<p>
+<strong>Struts Integration</strong>
+</p>
 <p>Page Flows are built on top of Apache Struts 1.1.  Each Page Flow is 
compiled into a Struts module.  As a result, Page Flow and Struts applications 
can work closely together.</p>
-<p>Struts and Page Flow apps can co-habitate and interact with one another 
inside a web app.  To forward from a Page Flow to a (pure) Struts module, 
simply forward to the desired action within the Struts module.  The same goes 
for the reverse direction: from a Struts module, simply configure an action to 
point to the desired method in the Page Flow.  <!--[todo: detailed doc based on 
R. Feit's: 
http://dev2dev.bea.com/products/wlworkshop81/articles/Feit.jsp]--></p>
+<p>Struts and Page Flow apps can co-habitate and interact with one another 
inside a web app.  To forward from a Page Flow to a (pure) Struts module, 
simply reference the desired action within the Struts module.  The same goes 
for the reverse direction: from a Struts module, simply configure an action to 
point to the desired method in the Page Flow.  <!--[todo: detailed doc based on 
R. Feit's: 
http://dev2dev.bea.com/products/wlworkshop81/articles/Feit.jsp]--></p>
 <p>You can use many advanced Struts features within a Page Flow, for example, 
the StrutsValidatorPlugIn, which allows you to declare validation rules inside 
an XML file.  Page Flows do not directly support the plug-in, but you can refer 
your data to a Struts app that does support the plug-in by using the 
<strong>Struts merge</strong> feature of Page Flows. <!-- [todo: detailed doc 
based on R. Feit's: 
http://dev2dev.bea.com/products/wlworkshop81/articles/Feit.jsp] --> </p>
 </div>
-</div>
   
-<a name="N10055"></a><a name="logical_flow"></a>
+<a name="N1004F"></a><a name="logical_flow"></a>
 <h3>The Logical Flow</h3>
 <div style="margin-left: 0 ; border: 2px">
 <p>
@@ -440,7 +421,7 @@
 </div>
 
   
-<a name="N100AE"></a><a name="implementation_of_flow"></a>
+<a name="N100A8"></a><a name="implementation_of_flow"></a>
 <h3>The Implementation of the Flow</h3>
 <div style="margin-left: 0 ; border: 2px">
 <p>
@@ -522,7 +503,7 @@
     </p>
 </div>
   
-<a name="N10121"></a><a name="next"></a>
+<a name="N1011B"></a><a name="next"></a>
 <h3>Next...</h3>
 <div style="margin-left: 0 ; border: 2px">
 <p>

Modified: 
incubator/beehive/site/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
==============================================================================
--- 
incubator/beehive/site/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
       (original)
+++ 
incubator/beehive/site/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
       Fri Nov 12 07:29:29 2004
@@ -14,34 +14,26 @@
     controls the user experience flow through an application.  In addition to 
allowing
     complex logic to dictate which pages are displayed, JPF technology helps 
decouple
     page authoring from application logic by preventing one JSP from directly 
referencing
-    another.
+    another.  It also allows for easy state management within a single Java 
class.
     </p>
 
   </section>
 <section>
-    <title>Some Page Flow Features</title>
-    <p>Here are a few of the advantages of developing web applications with 
Page Flows.</p>
-  <section>
-    <title>Declarative Programming</title>
+    <title>Page Flow Features</title>
+            <p>Page Flows make building Java web applications easy and 
intuitive.  When programming with Page Flows, the developer writes JAVA classes 
and JSP pages--that's it.  There is very little occasion to work with 
configuration files, or other components.  Page Flow programming also excels at 
separating presentation logic from data processing logic, resulting in 
uncluttered JSP code which is easy to understand and edit.  Data processing and 
the web application configurables are handled in a single Java class using a 
simple declarative programming model.</p>
+    <p><strong>Declarative Programming</strong></p>
     <p>Many common web app programming tasks are accomplished through a 
declarative programming model using JSR 175 metadata annotations, a new feature 
in JKD5.  JSR 175 metadata annotations, "annotations" for short, are property 
setters for Java classes and methods, aliviating the need for independent 
configuration files. Navigation, exception handling, validation, and other 
tasks become configurable properties of a single Java class, the "controller" 
class that drives the web application.</p>
-</section>
-<section>
-    <title>Page Flows are Stateful</title>
     
-</section>
-<section>
-    <title>Shared Flow</title>
-</section>
-  <section>
-    <title>URL Addressable [todo, JIRA 82]</title>
-</section>
-  <section>
-    <title>Struts Integration</title>
+    <p><strong>Page Flows are Stateful</strong></p>
+    <p>When a user enters a Page Flow (by calling an URL in the Page Flow's 
URL space), an instance of the Page Flow's controller class is created.  While 
the user is in the Page Flow, the controller class stores the accumulated 
session and user state. The methods within the class have access to the 
accumulated state, making for easy state management within the web application. 
 For example, suppose your web application calls for a multi-page registration, 
where the user moves from page to page filling out a user profile.  The 
controller class stores the user data as the user progresses through the 
registration and has access to the profile data as session state.  When the 
user leaves the Page Flow, the state is automatically cleaned up. </p>
+<p><strong>Page Flows are Modular</strong></p>
+<p>A single web application can have multiple Page Flows within it, allowing 
you to break up the application into separate, self-contained chunks of 
functionality.  For an example, see the <link href="../jpetstore.html">Petstore 
Sample</link>, which has different Page Flows for browsing the Petstore, buying 
products, and handling user accounts.</p>
+<p>Page Flow web applications also contain a global Page Flow, called the 
"shared flow", which is both a fallback handler for unhandled actions and 
exceptions and a place to store session state. An instance of the shared flow 
class is stored in the user session upon the first request to any Page Flow and 
remains until the session ends.  When an action is raised in a Page Flow, and 
that action is not handled by the Page Flow, the shared flow gets a chance to 
handle it. The same is true for an exception raised within a Page Flow: if it 
is unhandled in the Page Flow, the shared flow gets a chance to handle it.</p>
+   <p><strong>Struts Integration</strong></p>
     <p>Page Flows are built on top of Apache Struts 1.1.  Each Page Flow is 
compiled into a Struts module.  As a result, Page Flow and Struts applications 
can work closely together.</p> 
-<p>Struts and Page Flow apps can co-habitate and interact with one another 
inside a web app.  To forward from a Page Flow to a (pure) Struts module, 
simply forward to the desired action within the Struts module.  The same goes 
for the reverse direction: from a Struts module, simply configure an action to 
point to the desired method in the Page Flow.  <!--[todo: detailed doc based on 
R. Feit's: 
http://dev2dev.bea.com/products/wlworkshop81/articles/Feit.jsp]--></p>
+<p>Struts and Page Flow apps can co-habitate and interact with one another 
inside a web app.  To forward from a Page Flow to a (pure) Struts module, 
simply reference the desired action within the Struts module.  The same goes 
for the reverse direction: from a Struts module, simply configure an action to 
point to the desired method in the Page Flow.  <!--[todo: detailed doc based on 
R. Feit's: 
http://dev2dev.bea.com/products/wlworkshop81/articles/Feit.jsp]--></p>
 
 <p>You can use many advanced Struts features within a Page Flow, for example, 
the StrutsValidatorPlugIn, which allows you to declare validation rules inside 
an XML file.  Page Flows do not directly support the plug-in, but you can refer 
your data to a Struts app that does support the plug-in by using the 
<strong>Struts merge</strong> feature of Page Flows. <!-- [todo: detailed doc 
based on R. Feit's: 
http://dev2dev.bea.com/products/wlworkshop81/articles/Feit.jsp] --> </p>
-</section>
 </section>
   <section id="logical_flow">
     <title>The Logical Flow</title>

Reply via email to