|
|
Author: steveh
Date: Mon Dec 20 14:26:54 2004
New Revision: 122891
URL: http://svn.apache.org/viewcvs?view=rev&rev=122891
Log:
Latest edits to the page flow runtime config docs.
Modified:
incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml
Modified:
incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml
Url:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml?view=diff&rev=122891&p1=incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml&r1=122890&p2=incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml&r2=122891
==============================================================================
---
incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml
(original)
+++
incubator/beehive/trunk/docs/forrest/src/documentation/content/xdocs/pageflow/config/netui-config.xml
Mon Dec 20 14:26:54 2004
@@ -1,30 +1,264 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN"
"http://forrest.apache.org/dtd/document-v13.dtd">
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN"
"http://forrest.apache.org/dtd/document-v20.dtd">
<document>
<header>
- <title>netui-config.xml</title>
+ <title>Reference Documentation: netui-config.xml File</title>
</header>
<body>
-<p>The netui-config.xml file, which resides in the web application's WEB-INF
directory, contains webapp-wide configuration settings for all Page Flows in
the web app. Descriptions for each element in the configuration file appear
below.</p>
-<section>
- <title>Action interceptors</title>
-<p><strong><pageflow-action-interceptors></strong></p>
-<p>If you want to be notified before every action that's run in the webapp,
you configure one of these. A simple example of this is monitoring
infrastructure that keeps track of a count of actions raised -- you can
register an interceptor that runs the counting code before going to any action.
A more complex example is an interceptor that *redirects* you to another page
flow before allowing you to go to the current one; for instance, it might take
you to a nested page flow that asks you to fill out a "satisfaction survey"
before sending you to the destination page flow.</p>
-</section>
-<section>
- <title>Handlers</title>
-<p><strong><pageflow-handlers></strong></p>
-<p>These settings let you override base framework behavior. A good example is
the LoginHandler. By default, we use standard Servlet APIs to see if you're
logged in, and we use some server-specific APIs to actually log you in when
login() is called inside a page flow. If you want to replace this behavior
with your own login scheme (which may look at a User database table for login
information), you can provide your own LoginHandler that defines methods like
login() and isUserInRole().</p>
-</section>
-<section>
- <title>PageFlow Config</title>
- <p><strong><pageflow-config></strong></p>
-<p>This is just the place for settings that configure the page flow runtime
across the webapp. If you want to disable file-upload, for instance, you set
the multipart-handler to "none". There will be more settings here soon.</p>
+ <section>
+ <title>Description</title>
+ <p>
+ The <code>netui-config.xml</code> file configures the runtime
behavior of your Page Flow web
+ app.
+ </p>
+ <p>Use <code>netui-config.xml</code> to declare interceptor classes,
override the default handler classes,
+ etc.</p>
+ </section>
+ <section>
+ <title>Elements</title>
+ <!--<section><title><action-interceptor></title><p> Â
</p></section>
+ <section><title><after-action></title><p> Â </p></section>
+ <section><title><before-action></title><p> Â </p></section>
+ <section><title><binding-context></title><p> Â </p></section>
+ <section><title><binding-contexts></title><p> Â </p></section>
+ <section><title><converter-class></title><p> Â </p></section>
+ <section><title><default-language></title><p> Â </p></section>
+ <section><title><description></title><p> Â </p></section>
+ <section><title><doctype></title><p> Â </p></section>
+ <section><title><enable-renesting></title><p> Â </p></section>
+ <section><title><ensure-secure-forwards></title><p> Â
</p></section>
+ <section><title><exceptions-handler-class></title><p> Â
</p></section>
+ <section><title><expression-language></title><p> Â </p></section>
+ <section><title><expression-languages></title><p> Â
</p></section>
+ <section><title><factory-class></title><p> Â </p></section>
+ <section><title><forward-redirect-handler-class></title><p> Â
</p></section>
+ <section><title><global></title><p> Â </p></section>
+ <section><title><id-javascript></title><p> Â </p></section>
+ <section><title><interceptor-class></title><p> Â </p></section>
+ <section><title><iterator-factories></title><p> Â </p></section>
+ <section><title><iterator-factory></title><p> Â </p></section>
+ <section><title><jsp-tag-config></title><p> Â </p></section>
+ <section><title><legacy-tag-support></title><p> Â </p></section>
+ <section><title><locator-class></title><p> Â </p></section>
+ <section><title><login-handler-class></title><p> Â </p></section>
+ -->
+ <section><title><max-forwards-per-request></title><p>If the
number of server
+ forwards exceeds the given count, an error is written to the response
and no further
+ forwarding is excuted. This is mainly to prevent infinite loops of
server forwards.
+ To reproduce the error, invoke this action in a Page Flow:</p>
+<source>
+<![CDATA[ @Jpf.Action(
+ forwards={
+ @Jpf.Forward(name="self", path="overflow.do")
+ }
+ )
+ public Forward overflow()
+ {
+ return new Forward( "self" );
+ }]]></source>
+
+<p>If the jpf-forward-overflow-count parameter is ommitted from the web.xml
file,
+the error will be written to the response after 50 server forwards within a
single request. Â
+</p>
+<p><strong>Example:</strong></p>
+<source>
+<![CDATA[
+<netui-config>
+ ...
+ <pageflow-config>
+ ...
+ <max-forwards-per-request>100</max-forwards-per-request>
+ ...
+ </pageflow-config>
+ ...
+</netui-config>
+]]></source>
</section>
+
+ <section><title><max-nesting-stack-depth></title><p>
+ This parameter sets the maximum size of the Page Flow nesting stack.
+ If Page Flows are repeatedly nested until the stack exceeds the
specified value,
+ an error is written to the response object and any further nesting is
not allowed.
+ This helps prevent the nesting stack from consuming large amounts of
resources.
+
+ Â </p>
+<p><strong>Example:</strong></p>
+<source>
+<![CDATA[
+<netui-config>
+ ...
+ <pageflow-config>
+ ...
+ <max-nesting-stack-depth>10</netui:max-nesting-stack-depth>
+ ...
+ </pageflow-config>
+ ...
+</netui-config>
+]]></source>
+ </section>
+ <!--
+ <section><title><module-config-locator></title><p> Â
</p></section>
+ <section><title><module-config-locators></title><p> Â
</p></section>-->
+ <section><title><multipart-handler></title><p>
+ To disable file upload, set the value to "none".
+ [todo: other values include memory, ?, ...]
+<p><strong>Example:</strong></p>
+<source>
+<![CDATA[
+<netui-config>
+ ...
+ <pageflow-config>
+ ...
+ <multipart-handler>none</multipart-handler>
+ ...
+ </pageflow-config>
+ ...
+</netui-config>
+]]></source>
+ Â </p></section>
+ <!-- <section><title><name></title><p> Â </p></section>-->
+ <section>
+ <title><netui-config></title>
+ <p>
+ This is just the place for settings that configure the page
+ flow runtime across the webapp. If you want to disable file-upload,
+ for instance, you set the multipart-handler to "none".
+ There will be more settings here soon.
+ Â </p>
+ </section>
+ <section>
+ <title><pageflow-action-interceptors></title>
+ <p>
+
+If you want to be notified before (or after) every action that's run in the
webapp,
+you configure a <pageflow-action-interceptor> group.
+A simple example of this would be a monitoring infrastructure
+that keeps track of the number of actions raised. To keep track of the number
of actions raised,
+register an interceptor
+that runs the counting code before going to any action. A more complex example
+is an interceptor that *redirects* you to another page flow before allowing
you
+to go to the current one; for instance, it might take you to a nested page
flow
+that asks you to fill out a "satisfaction survey" before sending you to the
+destination page flow. </p>
+ <p>
+Example:
+</p>
+ <source><![CDATA[ <pageflow-action-interceptors>
+ <global>
+ <before-action>
+ <action-interceptor>
+
<interceptor-class>myApp.interceptors.InterceptorsController$BeforeInterceptor</interceptor-class>
+ </action-interceptor>
+ </before-action>
+ <after-action>
+ <action-interceptor>
+
<interceptor-class>myApp.interceptors.InterceptorsController$AfterInterceptor</interceptor-class>
+ </action-interceptor>
+ </after-action>
+ </global>
+ </pageflow-action-interceptors>]]></source>
+ <p><strong>Also see:</strong></p>
+ <p>Interface
org.apache.beehive.netui.pageflow.interceptor.ActionInterceptor</p>
+ </section>
+ <section>
+ <title><pageflow-config></title>
+ <p>
+This is just the place for settings that configure the page flow
+runtime across the webapp. If you want to disable file-upload, for instance,
+you set the multipart-handler to "none". There will be more settings here
soon.
+ Â </p>
+ </section>
+ <section>
+ <title><pageflow-handlers></title>
+ <p>
+These settings let you override base framework behavior.
+A good example is the LoginHandler. By default, we use standard Servlet
+APIs to see if you're logged in, and we use some server-specific APIs to
+actually log you in when login() is called inside a page flow.
+If you want to replace this behavior with your own login scheme
+(which may look at a User database table for login information),
+you can provide your own LoginHandler that defines methods like login() and
isUserInRole().
+</p>
+ </section>
+ <!--
+<section><title><reloadable-class-handler-class></title><p> Â
</p></section>
+<section><title><throw-session-expired-exception></title><p> Â
</p></section>
+<section><title><tree-image-location></title><p> Â </p></section>
+<section><title><type></title><p> Â </p></section>
+<section><title><type-converter></title><p> Â </p></section>
+<section><title><type-converters></title><p> Â </p></section>
+-->
+ </section>
+ <section>
+ <title>Example</title>
+ <p>
+ Use the following example <code>netui-config.xsd</code> file as a
template.</p>
+ <source><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+
+<netui-config xmlns="http://beehive.apache.org/netui/2004/server/config">
+
+ <legacy-tag-support>false</legacy-tag-support>
+
+ <expression-languages>
+ <default-language>netuiel</default-language>
+ <expression-language>
+ <name>netuiel</name>
+
<factory-class>org.apache.beehive.netui.script.el.ExpressionEvaluatorImpl$NetUIELEngineFactory</factory-class>
+ </expression-language>
+ </expression-languages>
+
+ <pageflow-action-interceptors>
+ <global>
+ <before-action>
+ <action-interceptor>
+
<interceptor-class>miniTests.interceptors.InterceptorsController$BeforeInterceptor</interceptor-class>
+ </action-interceptor>
+ <action-interceptor>
+
<interceptor-class>miniTests.interceptors.InterceptorsController$BeforeInterceptor2</interceptor-class>
+ </action-interceptor>
+ </before-action>
+ <after-action>
+ <action-interceptor>
+
<interceptor-class>miniTests.interceptors.InterceptorsController$AfterInterceptor</interceptor-class>
+ </action-interceptor>
+ <action-interceptor>
+
<interceptor-class>miniTests.interceptors.InterceptorsController$AfterInterceptor2</interceptor-class>
+ </action-interceptor>
+ </after-action>
+ </global>
+ </pageflow-action-interceptors>
+
+ <pageflow-handlers>
+
<forward-redirect-handler-class>pageFlowCore.forwards.Controller$Redirector</forward-redirect-handler-class>
+ </pageflow-handlers>
+
+ <pageflow-config>
+ <multipart-handler>memory</multipart-handler>
+ <module-config-locators>
+ <module-config-locator>
+ <description>For /miniTests/moduleConfigLocator.</description>
+ <locator-class>moduleConfigLocator.Locator1</locator-class>
+ </module-config-locator>
+ </module-config-locators>
+ </pageflow-config>
+
+ <jsp-tag-config>
+ <doctype>html4-loose</doctype>
+ <id-javascript>Legacy-JavaScript-Only</id-javascript>
+ </jsp-tag-config>
+
+ <iterator-factories>
+ </iterator-factories>
+
+</netui-config>
+
+ ]]></source>
+ </section>
+ <section>
+ <title>Related Topics</title>
+<p>Class org.apache.beehive.netui.util.config.ConfigUtil</p>
+<p>Interface
org.apache.beehive.netui.pageflow.interceptor.ActionInterceptor</p>
+ </section>
+
</body>
- <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
- </legal>
- </footer>
</document>
|
|