beehive-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ste...@apache.org
Subject svn commit: r124315 - /incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
Date Wed, 05 Jan 2005 23:46:53 GMT
Author: steveh
Date: Wed Jan  5 15:46:52 2005
New Revision: 124315

URL: http://svn.apache.org/viewcvs?view=rev&rev=124315
Log:
Added info about state-management and changed the Struts merge example.
Modified:
   incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml

Modified: incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml?view=diff&rev=124315&p1=incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml&r1=124314&p2=incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml&r2=124315
==============================================================================
--- incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
(original)
+++ incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/pageflow_overview.xml
Wed Jan  5 15:46:52 2005
@@ -32,11 +32,11 @@
 		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>
-    
     <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 
+		stores the accumulated flow-related state in member variables of the conroller class. 
+		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 
@@ -61,9 +61,11 @@
 	<p>So when would you use this? Nesting is useful when you want to do one of the following
tasks:</p>
     <ul>
 		<li>gather data from the user, for use in the current page flow</li>
-		<li>allow the user to correct errors or supply additional information en route to
executing a desired action</li>
+		<li>allow the user to correct errors or supply additional information en route to
executing a desired 
+			action</li>
 		<li>show an alternate view of data represented in the current page flow</li>
-		<li>show the user information that will be useful in the current page flow (e.g.,
help screens can be easily implemented as nested page flows)</li>
+		<li>show the user information that will be useful in the current page flow (e.g.,
help screens can be 
+			easily implemented as nested page flows)</li>
     </ul>
     <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.  
@@ -73,8 +75,19 @@
 	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>
+<p>You can also use the Struts merge feature to read configuration data from a pure
Struts app into your 
+	Page Flow apps configuration files.  Ordinarily, your Page Flow's configuration files are
generated 
+	entirely from your application's
+	JAVA source files (specifically from the <em>metadata annotations</em> that
decorate your JAVA source code).  
+	But, in cases where you want to integrate a Struts module into your application,
+	you can specify that the configuration files be generated from both the JAVA source files
<em>and</em> the 
+	Struts module's configuration files, allowing you to change or add <em>any tag</em>
in the generated 
+	configuration file.  For example, suppose you want to override the default request-scoping
for an 
+	action form to session-scoping.  To do this, you simply create a Struts configuration file

+	that overrides the appropriate parts of the Page Flow's configuration file, and then refer
to this 
+	override file from within the Page Flow's JAVA source file using a special annotation. 
In particular,
+	you would specify the override file to state that such-and-such and action form should have
session-scope
+	rather then request-scope (so that the action form can now be shared with the Struts app).
 </p>
 </section>
   <section id="logical_flow">
     <title>The Logical Flow</title>

Mime
View raw message