You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ek...@apache.org on 2006/01/26 19:07:00 UTC
svn commit: r372578 [3/3] - in /beehive/trunk: ./ controls/
docs/forrest/release/ docs/forrest/release/src/documentation/content/xdocs/
docs/forrest/release/src/documentation/content/xdocs/controls/
docs/forrest/release/src/documentation/content/xdocs/...
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormRepeating.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormRepeating.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormRepeating.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormRepeating.xml Thu Jan 26 10:06:32 2006
@@ -1,479 +1,479 @@
-<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN"
- "http://forrest.apache.org/dtd/document-v20.dtd">
-<document>
- <header>
- <title>NetUI Repeating Form Control Tags</title>
- </header>
- <body>
- <section id="Intro">
- <title>Introduction</title>
- <p> The three NetUI group tags offer a repeating mode that increases the control
- the developer has over their output. For the <code><netui:checkBoxGroup></code>
- and the <code><netui:radioButtonGroup></code> tags the control extends to the layout of the resulting
- markup. For the <code><netui:select></code> tag the developer can control the order of
- the options and the <code>value</code> and <code>label</code> when an <code>optionsDataSource</code>
- is being used.
- </p>
- <p> This is an advanced tag topic. For more information on the basic operations of these tags
- see the <a href="site:pageflow_tag_formControls">NetUI Form Control Tags</a> topic.
- </p>
- </section>
- <section id="GroupTags">
- <title>CheckBoxGroup and RadioButtonGroup</title>
- <p>This section demonstrates how to control the markup generated by both the <code><netui:checkBoxGroup></code>
- and <code><netui:radioButtonGroup></code> tags. Both tags have an attribute <code>repeater</code>
- which, when set to <code>true</code>, turns the tag into a repeating tag. The tag will then loop
- over each element found in the <code>optionsDataSource</code> and evaluate the tag's body against the item.
- Before the body is evaluated, the implicit object <code>container</code> is setup. For more
- information see the <a href="site:databinding_container">data binding container implicit object</a>
- topic.
- </p>
- <p> This gives the developer more ability to control the layout and style associated with the options
- when they are using an <code>optionsDataSource</code>. Below are examples of both the <code><netui:checkBoxGroup></code>
- and the <code><netui:radioButtonGroup></code> tags.
- </p>
- <section id="CheckBoxGroup">
- <title>CheckBoxGroup</title>
- <p> This example will create a horizontal layout for a set of checkboxes. Individual styles
- will be applied to the labels of the checkbox. The layout is done using an HTML table.
- </p>
- <p><img src="images/repeatCheckBox.png" alt="CheckBoxGroup with horizontal layout"/></p>
- <p>In the JSP fragment below, the <code><netui:checkBoxGroup></code> tag is bound
- to an <code>optionsDataSource</code> in the page flow. The <code>optionsDataSource</code>
- is an array of a class that contains the style, label value and option value for each
- element to be displayed in the group. Notice that inside the body of the <code>checkBoxGroup</code>
- all the binding expressions start with <code>${container.item.XXX}</code>. The body will be
- repeated for each element in the <code>optionsDataSource</code>.
- </p>
- <p><strong>Note:</strong> The <code>dataSource</code>
- also directly binds to a page flow variable. Typically, the <code>dataSource</code>
- would bind to an <code>actionForm</code> variable.
- </p>
- <source><![CDATA[
-<table>
-<caption class="normalAttr">CheckBox Group</caption>
-<tr><td>
-<netui:checkBoxGroup dataSource="pageFlow.results" optionsDataSource="${pageFlow.opts}"
- repeater="true" >
- <netui:span styleClass="${container.item.style}" value="${container.item.name}" />
- <netui:checkBoxOption value="${container.item.optionValue}" />
-</netui:checkBoxGroup>
-</td></tr>
-</table>
-]]></source>
- <p> The following style information is found in the JSP. These styles affect the
- presentation of label output. This is done by setting the styles on the
- <code><netui:span></code> tags that act as the labels for the generated
- checkboxes.
- </p>
- <source><![CDATA[
-<style type="text/css">
- .normalAttr {color: #cc0099;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
- .normal {color: #cc9999;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
- .normal2 {color: #00cc99;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
- .normal3 {color: #99cc99;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
-</style>
-]]></source>
- <p> Below is the page flow controller that supports the example above. In the
- <code>onCreate</code> method, we initialize the <code>optionsDataSource</code>.
- In addition, we provide a <code>java.lang.String[]</code> that will recieve the
- results of posting the form back. Finally, an inner class defines a Java bean
- that contains the information used by the options.
- </p>
- <source>
-package repeating;
-
-import org.apache.beehive.netui.pageflow.PageFlowController;
-import org.apache.beehive.netui.pageflow.Forward;
-import org.apache.beehive.netui.pageflow.annotations.Jpf;
-
-@Jpf.Controller(
- simpleActions={
- @Jpf.SimpleAction(name="begin", path="index.jsp")
- }
-)
-public class Controller extends PageFlowController
-{
- private Options[] opts;
- private String[] results;
-
- public Options[] getOpts()
- {
- return opts;
- }
-
- public void setOpts(Options[] opts)
- {
- this.opts = opts;
- }
-
- public String[] getResults()
- {
- return results;
- }
-
- public void setResults(String[] resultsOne)
- {
- this.results = resultsOne;
- }
-
- protected void onCreate()
- {
- // initialize the opts
- opts = new Options[3];
- opts[0] = new Options("Option One","opt-1", "normal");
- opts[1] = new Options("Option Two","opt-2", "normal2");
- opts[2] = new Options("Option Three","opt-3", "normal3");
- }
-
- /**
- * @jpf:action
- * @jpf:forward name="index" path="Results.jsp"
- */
- @Jpf.Action(
- forwards = {
- @Jpf.Forward(
- name = "index",
- path = "Results.jsp")
- })
- protected Forward post()
- {
- return new Forward("index");
- }
-
- public static class Options implements java.io.Serializable {
- private String _name;
- private String _optionValue;
- private String _style;
-
- public Options(String name, String value, String style) {
- _name = name;
- _optionValue = value;
- _style = style;
- }
-
- public void setName(String name) {
- _name = name;
- }
- public String getName() {
- return _name;
- }
-
- public void setOptionValue(String optionValue) {
- _optionValue = optionValue;
- }
- public String getOptionValue() {
- return _optionValue;
- }
-
- public void setStyle(String style) {
- _style = style;
- }
- public String getStyle() {
- return _style;
- }
- }
-}
-</source>
- </section>
- <section id="RadioButtonGroup">
- <title>RadioButtonGroup</title>
- <p> <strong>Note:</strong> This example is very similar to the previous example using the
- <a href="#CheckBoxGroup">CheckBoxGroup</a>. The only real difference is that the
- layout of the radio buttons is vertical. For a detailed discussion, you should
- read that example.
- </p>
- <p><img src="images/repeatRadioButton.png" alt="RadioButtonGroup with vertical layout"/></p>
- <p> Below is a fragment of a JSP that will layout a RadioButtonGroup in a table vertically.
- All of the options have an individually applied style. Notice that the
- <code>repeater</code> attribute is set on the <code><netui:radioButtonGroup></code>
- tag to repeat over the items defined in the <code>optionsDataSource</code>.
- </p>
- <source><![CDATA[
-<table width="200pt">
- <caption class="normalAttr">RadioButton Group</caption>
- <netui:radioButtonGroup dataSource="pageFlow.results" optionsDataSource="${pageFlow.opts}" repeater="true">
- <tr align="center"><td align="right" width="25%">
- <netui:radioButtonOption value="${container.item.optionValue}" /></td>
- <td align="left"><netui:span styleClass="${container.item.style}" value="${container.item.name}" />
- </td></tr>
- </netui:radioButtonGroup>
-</table>
-]]></source>
- <p> This example can use the same page flow controller as the previous example with one simple
- modification. A radio button group will post back a single value. By modifying the
- <code>results</code> property on the page flow controller we convert if from a
- <code>String[]</code> to just a <code>String</code>.
- </p>
- <source>
- private String results;
- public String getResults()
- {
- return results;
- }
- public void setResults(String resultsOne)
- {
- this.results = resultsOne;
- }
-</source>
- </section>
- </section>
- <section id="Select">
- <title>Select</title>
- <p> Repeating in a <code><netui:select></code> is much different than repeating in
- either the <code><netui:checkBoxGroup></code> or <code><netui:radioButtonGroup></code>.
- There is no layout or style information applied to the individual options because typically
- they are displayed as a single select box control inside the browser.
- </p>
- <p> Repeating in the <code><netui:select></code> enables the developer to control the order
- of the options and to control the HTML <code><option></code> element rendered
- for each type of option. A <code><netui:select></code>
- tag actually creates it's options by iterating over multiple sets of data. For each unique
- <code>value</code> found, an HTML <code><option></code> element is rendered.
- The following table
- describes each source of data that can be used to create the output options.
- </p>
- <table>
- <tr><th>Stage Name</th><th>Source property</th><th>Description</th></tr>
- <tr><td><code>option</code></td><td><code>optionsDataSource</code></td>
- <td>This is an array of some class. Each element of the array will be output
- as an option. Typically the class can just be a <code>String</code> or it may be a Java
- bean.</td></tr>
- <tr><td><code>default</code></td><td><code>defaultValue</code></td>
- <td>This is a single value that will be output as an option. This value is always a
- <code>String</code></td></tr>
- <tr><td><code>dataSource</code></td><td><code>dataSource</code></td>
- <td>When the select is rendered, if the variable bound to contains data, it
- will be added to the options. This value may be a single <code>String</code>
- or an array of <code>String</code>s.</td></tr>
- <tr><td><code>null</code></td><td><code>nullableOptionText</code></td>
- <td>This is a special value that indicates a null value. You must set
- the <code>nullable</code> attribute to <code>true</code> to enable this.</td></tr>
- </table>
- <section id="selectExample">
- <title>Select Example</title>
- <p> The following example is a complex Select control <code><netui:select></code>
- that controls both the order and how each of the HTML <code><option></code>
- elements are rendered. The source for the JSP is followed by the controller.
- </p>
- <p><strong>Note:</strong> The select box posts its value back to the page
- flow. The typical use would be to post a value back through a <code>FormData</code>
- subclass.
- </p>
- <p><strong>index.jsp</strong></p>
- <source><![CDATA[
-<%@ page language="java" contentType="text/html;charset=UTF-8"%>
-<%@ taglib uri="http://beehive.apache.org/netui/tags-html-1.0" prefix="netui"%>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-<netui:html>
- <head>
- <title>Order Repeating Select</title>
- <style type="text/css">
- .normalAttr {color: #cc0099;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
- </style>
- </head>
- <netui:body>
- <h4>Order Repeating Select</h4>
- <p style="color:green">This example demonstrates using a repeating select.
- </p>
- <netui:form action="post">
- <netui:select dataSource="pageFlow.results" defaultValue="default Value"
- optionsDataSource="${pageFlow.opts}" repeater="true"
- repeatingOrder="null, default, option" nullable="true">
- <c:if test="${container.metadata.optionStage}">
- <netui:selectOption repeatingType="option"
- value="${container.item.optionValue}" styleClass="normalAttr">
- ${container.item.name}
- </netui:selectOption>
- </c:if>
- <c:if test="${container.metadata.defaultStage}">
- <netui:selectOption repeatingType="default"
- value="${container.item}" styleClass="normalAttr">
- ${container.item}
- </netui:selectOption>
- </c:if>
- <netui:selectOption repeatingType="null" value="null-opt"
- styleClass="normalAttr">
- [Nothing]
- </netui:selectOption>
- </netui:select>
- <p><netui:button>Submit</netui:button></p>
- </netui:form>
- </netui:body>
-</netui:html>
-]]></source>
- <p> The <code><netui:select></code> defines the <code>dataSource</code>,
- <code>defaultValue</code>, and an <code>optionsDataSource</code>. These may
- all be used to add values to the displayed options. In addition, the "null"
- option is also set because the <code>nullable</code> attribute is set to <code>true</code>.
- These are the four sources of options. The <code>repeater</code> attribute is set
- to <code>true</code>. For this reason, the body of the select will be repeated
- for each option to be rendered. Finally, the order of the options is specified
- using the <code>repeatingOrder</code> attribute. This is a comma separated list
- of the stage names from the table above. In this case, the order of the option
- will be "null", "default, "option" and the "dataSource" will not be displayed.
- </p>
- <source>
-<netui:select dataSource="pageFlow.results" defaultValue="default Value"
- optionsDataSource="${pageFlow.opts}" repeater="true"
- <strong>repeatingOrder="null, default, option"</strong> nullable="true">
-</source>
- <p> The example uses JSTL logic tags to control the evaluation of expressions for each of the
- stages. To include the JSTL core use the following tag library declaration in the JSP.
- </p>
- <source>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-</source>
- <p>The body of the <code><netui:select></code> will be evaluted once for each
- option to be rendered. In the body, we use the JSTL <code>if</code> tag to control
- the evalutation of each option. This is done to prevent expression evaluation errors
- when the JSP EL expressions are being evalated for each case. In the <code>container</code>
- implicit object, the current stage name is exposed within the <code>metadata</code>. There
- is a boolean property for each stage that is true only when options for that stage are being
- generated. These boolean properties are <code>optionStage</code>, <code>defaultStage</code>,
- <code>dataSourceStage</code>, and <code>nullStage</code>.
- </p>
- <source>
-<c:if test="${container.metadata.optionStage}">
- <netui:selectOption repeatingType="option"
- value="${container.item.optionValue}" styleClass="normalAttr">
- ${container.item.name}
- </netui:selectOption>
-</c:if>
-<c:if test="${container.metadata.defaultStage}">
- <netui:selectOption repeatingType="default"
- value="${container.item}" styleClass="normalAttr">
- ${container.item}
- </netui:selectOption>
-</c:if>
-<netui:selectOption repeatingType="null" value="null-opt"
- styleClass="normalAttr">
- [Nothing]
-</netui:selectOption>
-</source>
- <p>
- The code within the following JSTL <code>if</code> tag will execute only when the
- <code>optionsDataSource</code> is being evaluated. This allows
- the expressions used to set the properties to be evaluated against a known type and allows
- other stages to use different types.
- </p>
- <source>
-<c:if test="${container.metadata.optionStage}">
- ...
-</c:if>
-</source>
- <p> Within the JSTL <code>if</code> tag, there is a <code><netui:selectOption></code>.
- The option must identify which stage is being run; this is done by
- setting the <code>repeatingType</code> attribute to the stage name. The rest of the
- values are set using the <code>container</code> implicit object. This is set to
- each item defined for that stage. In this case, it will iterate over the
- <code>optionsDataSource</code>.
- </p>
- <source>
-<netui:selectOption <strong>repeatingType="option"</strong>>
- value="${container.item.optionValue}" styleClass="normalAttr">
- ${container.item.name}
-</netui:selectOption>
-</source>
- <p> The option for the nullable value does not contain any expressions and therefore
- does not appear inside a JSTL <code>if</code> tag. It will only render an option
- when the stage becomes <code>null</code> and will be ignored in for all other options.
- </p>
- <source>
-<netui:selectOption repeatingType="null" value="null-opt"
- styleClass="normalAttr">
- [Nothing]
-</netui:selectOption>
-</source>
- <p>The page flow controller is a simple controller that contains the properties
- exposing the options and a property that will be set when the form is posted.
- The options are built in the <code>onCreate</code> method. For the
- <code>optionsDataSource</code> each option is defined through an instance
- of the <code>Options</code> class.
- </p>
- <p><strong>Controller.jpf</strong></p>
- <source>
-package select;
-
-import org.apache.beehive.netui.pageflow.PageFlowController;
-import org.apache.beehive.netui.pageflow.Forward;
-import org.apache.beehive.netui.pageflow.annotations.Jpf;
-
-@Jpf.Controller(
- simpleActions={
- @Jpf.SimpleAction(name="begin", path="index.jsp")
- }
-)
-public class Controller extends PageFlowController
-{
- private Options[] opts;
- private String results;
-
- public Options[] getOpts()
- {
- return opts;
- }
-
- public void setOpts(Options[] opts)
- {
- this.opts = opts;
- }
-
- public String getResults()
- {
- return results;
- }
- public void setResults(String value)
- {
- this.results = value;
- }
-
- protected void onCreate()
- {
- // initialize the opts
- opts = new Options[3];
- opts[0] = new Options("Option One","opt-1");
- opts[1] = new Options("Option Two","opt-2");
- opts[2] = new Options("Option Three","opt-3");
- }
-
- @Jpf.Action(
- forwards = {
- @Jpf.Forward(
- name = "index",
- path = "Results.jsp")
- })
- protected Forward post()
- {
- return new Forward("index");
- }
-
- public static class Options implements java.io.Serializable {
- private String _name;
- private String _optionValue;
-
- public Options(String name, String value) {
- _name = name;
- _optionValue = value;
- }
-
- public void setName(String name) {
- _name = name;
- }
- public String getName() {
- return _name;
- }
-
- public void setOptionValue(String optionValue) {
- _optionValue = optionValue;
- }
- public String getOptionValue() {
- return _optionValue;
- }
- }
-}
-</source>
- </section>
- </section>
- </body>
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN"
+ "http://forrest.apache.org/dtd/document-v20.dtd">
+<document>
+ <header>
+ <title>NetUI Repeating Form Control Tags</title>
+ </header>
+ <body>
+ <section id="Intro">
+ <title>Introduction</title>
+ <p> The three NetUI group tags offer a repeating mode that increases the control
+ the developer has over their output. For the <code><netui:checkBoxGroup></code>
+ and the <code><netui:radioButtonGroup></code> tags the control extends to the layout of the resulting
+ markup. For the <code><netui:select></code> tag the developer can control the order of
+ the options and the <code>value</code> and <code>label</code> when an <code>optionsDataSource</code>
+ is being used.
+ </p>
+ <p> This is an advanced tag topic. For more information on the basic operations of these tags
+ see the <a href="site:pageflow_tag_formControls">NetUI Form Control Tags</a> topic.
+ </p>
+ </section>
+ <section id="GroupTags">
+ <title>CheckBoxGroup and RadioButtonGroup</title>
+ <p>This section demonstrates how to control the markup generated by both the <code><netui:checkBoxGroup></code>
+ and <code><netui:radioButtonGroup></code> tags. Both tags have an attribute <code>repeater</code>
+ which, when set to <code>true</code>, turns the tag into a repeating tag. The tag will then loop
+ over each element found in the <code>optionsDataSource</code> and evaluate the tag's body against the item.
+ Before the body is evaluated, the implicit object <code>container</code> is setup. For more
+ information see the <a href="site:databinding_container">data binding container implicit object</a>
+ topic.
+ </p>
+ <p> This gives the developer more ability to control the layout and style associated with the options
+ when they are using an <code>optionsDataSource</code>. Below are examples of both the <code><netui:checkBoxGroup></code>
+ and the <code><netui:radioButtonGroup></code> tags.
+ </p>
+ <section id="CheckBoxGroup">
+ <title>CheckBoxGroup</title>
+ <p> This example will create a horizontal layout for a set of checkboxes. Individual styles
+ will be applied to the labels of the checkbox. The layout is done using an HTML table.
+ </p>
+ <p><img src="images/repeatCheckBox.png" alt="CheckBoxGroup with horizontal layout"/></p>
+ <p>In the JSP fragment below, the <code><netui:checkBoxGroup></code> tag is bound
+ to an <code>optionsDataSource</code> in the page flow. The <code>optionsDataSource</code>
+ is an array of a class that contains the style, label value and option value for each
+ element to be displayed in the group. Notice that inside the body of the <code>checkBoxGroup</code>
+ all the binding expressions start with <code>${container.item.XXX}</code>. The body will be
+ repeated for each element in the <code>optionsDataSource</code>.
+ </p>
+ <p><strong>Note:</strong> The <code>dataSource</code>
+ also directly binds to a page flow variable. Typically, the <code>dataSource</code>
+ would bind to an <code>actionForm</code> variable.
+ </p>
+ <source><![CDATA[
+<table>
+<caption class="normalAttr">CheckBox Group</caption>
+<tr><td>
+<netui:checkBoxGroup dataSource="pageFlow.results" optionsDataSource="${pageFlow.opts}"
+ repeater="true" >
+ <netui:span styleClass="${container.item.style}" value="${container.item.name}" />
+ <netui:checkBoxOption value="${container.item.optionValue}" />
+</netui:checkBoxGroup>
+</td></tr>
+</table>
+]]></source>
+ <p> The following style information is found in the JSP. These styles affect the
+ presentation of label output. This is done by setting the styles on the
+ <code><netui:span></code> tags that act as the labels for the generated
+ checkboxes.
+ </p>
+ <source><![CDATA[
+<style type="text/css">
+ .normalAttr {color: #cc0099;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
+ .normal {color: #cc9999;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
+ .normal2 {color: #00cc99;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
+ .normal3 {color: #99cc99;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
+</style>
+]]></source>
+ <p> Below is the page flow controller that supports the example above. In the
+ <code>onCreate</code> method, we initialize the <code>optionsDataSource</code>.
+ In addition, we provide a <code>java.lang.String[]</code> that will recieve the
+ results of posting the form back. Finally, an inner class defines a Java bean
+ that contains the information used by the options.
+ </p>
+ <source>
+package repeating;
+
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.Controller(
+ simpleActions={
+ @Jpf.SimpleAction(name="begin", path="index.jsp")
+ }
+)
+public class Controller extends PageFlowController
+{
+ private Options[] opts;
+ private String[] results;
+
+ public Options[] getOpts()
+ {
+ return opts;
+ }
+
+ public void setOpts(Options[] opts)
+ {
+ this.opts = opts;
+ }
+
+ public String[] getResults()
+ {
+ return results;
+ }
+
+ public void setResults(String[] resultsOne)
+ {
+ this.results = resultsOne;
+ }
+
+ protected void onCreate()
+ {
+ // initialize the opts
+ opts = new Options[3];
+ opts[0] = new Options("Option One","opt-1", "normal");
+ opts[1] = new Options("Option Two","opt-2", "normal2");
+ opts[2] = new Options("Option Three","opt-3", "normal3");
+ }
+
+ /**
+ * @jpf:action
+ * @jpf:forward name="index" path="Results.jsp"
+ */
+ @Jpf.Action(
+ forwards = {
+ @Jpf.Forward(
+ name = "index",
+ path = "Results.jsp")
+ })
+ protected Forward post()
+ {
+ return new Forward("index");
+ }
+
+ public static class Options implements java.io.Serializable {
+ private String _name;
+ private String _optionValue;
+ private String _style;
+
+ public Options(String name, String value, String style) {
+ _name = name;
+ _optionValue = value;
+ _style = style;
+ }
+
+ public void setName(String name) {
+ _name = name;
+ }
+ public String getName() {
+ return _name;
+ }
+
+ public void setOptionValue(String optionValue) {
+ _optionValue = optionValue;
+ }
+ public String getOptionValue() {
+ return _optionValue;
+ }
+
+ public void setStyle(String style) {
+ _style = style;
+ }
+ public String getStyle() {
+ return _style;
+ }
+ }
+}
+</source>
+ </section>
+ <section id="RadioButtonGroup">
+ <title>RadioButtonGroup</title>
+ <p> <strong>Note:</strong> This example is very similar to the previous example using the
+ <a href="#CheckBoxGroup">CheckBoxGroup</a>. The only real difference is that the
+ layout of the radio buttons is vertical. For a detailed discussion, you should
+ read that example.
+ </p>
+ <p><img src="images/repeatRadioButton.png" alt="RadioButtonGroup with vertical layout"/></p>
+ <p> Below is a fragment of a JSP that will layout a RadioButtonGroup in a table vertically.
+ All of the options have an individually applied style. Notice that the
+ <code>repeater</code> attribute is set on the <code><netui:radioButtonGroup></code>
+ tag to repeat over the items defined in the <code>optionsDataSource</code>.
+ </p>
+ <source><![CDATA[
+<table width="200pt">
+ <caption class="normalAttr">RadioButton Group</caption>
+ <netui:radioButtonGroup dataSource="pageFlow.results" optionsDataSource="${pageFlow.opts}" repeater="true">
+ <tr align="center"><td align="right" width="25%">
+ <netui:radioButtonOption value="${container.item.optionValue}" /></td>
+ <td align="left"><netui:span styleClass="${container.item.style}" value="${container.item.name}" />
+ </td></tr>
+ </netui:radioButtonGroup>
+</table>
+]]></source>
+ <p> This example can use the same page flow controller as the previous example with one simple
+ modification. A radio button group will post back a single value. By modifying the
+ <code>results</code> property on the page flow controller we convert if from a
+ <code>String[]</code> to just a <code>String</code>.
+ </p>
+ <source>
+ private String results;
+ public String getResults()
+ {
+ return results;
+ }
+ public void setResults(String resultsOne)
+ {
+ this.results = resultsOne;
+ }
+</source>
+ </section>
+ </section>
+ <section id="Select">
+ <title>Select</title>
+ <p> Repeating in a <code><netui:select></code> is much different than repeating in
+ either the <code><netui:checkBoxGroup></code> or <code><netui:radioButtonGroup></code>.
+ There is no layout or style information applied to the individual options because typically
+ they are displayed as a single select box control inside the browser.
+ </p>
+ <p> Repeating in the <code><netui:select></code> enables the developer to control the order
+ of the options and to control the HTML <code><option></code> element rendered
+ for each type of option. A <code><netui:select></code>
+ tag actually creates it's options by iterating over multiple sets of data. For each unique
+ <code>value</code> found, an HTML <code><option></code> element is rendered.
+ The following table
+ describes each source of data that can be used to create the output options.
+ </p>
+ <table>
+ <tr><th>Stage Name</th><th>Source property</th><th>Description</th></tr>
+ <tr><td><code>option</code></td><td><code>optionsDataSource</code></td>
+ <td>This is an array of some class. Each element of the array will be output
+ as an option. Typically the class can just be a <code>String</code> or it may be a Java
+ bean.</td></tr>
+ <tr><td><code>default</code></td><td><code>defaultValue</code></td>
+ <td>This is a single value that will be output as an option. This value is always a
+ <code>String</code></td></tr>
+ <tr><td><code>dataSource</code></td><td><code>dataSource</code></td>
+ <td>When the select is rendered, if the variable bound to contains data, it
+ will be added to the options. This value may be a single <code>String</code>
+ or an array of <code>String</code>s.</td></tr>
+ <tr><td><code>null</code></td><td><code>nullableOptionText</code></td>
+ <td>This is a special value that indicates a null value. You must set
+ the <code>nullable</code> attribute to <code>true</code> to enable this.</td></tr>
+ </table>
+ <section id="selectExample">
+ <title>Select Example</title>
+ <p> The following example is a complex Select control <code><netui:select></code>
+ that controls both the order and how each of the HTML <code><option></code>
+ elements are rendered. The source for the JSP is followed by the controller.
+ </p>
+ <p><strong>Note:</strong> The select box posts its value back to the page
+ flow. The typical use would be to post a value back through a <code>FormData</code>
+ subclass.
+ </p>
+ <p><strong>index.jsp</strong></p>
+ <source><![CDATA[
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib uri="http://beehive.apache.org/netui/tags-html-1.0" prefix="netui"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+<netui:html>
+ <head>
+ <title>Order Repeating Select</title>
+ <style type="text/css">
+ .normalAttr {color: #cc0099;font-family:Verdana; font-size:8pt;margin:0,0,0,0;}
+ </style>
+ </head>
+ <netui:body>
+ <h4>Order Repeating Select</h4>
+ <p style="color:green">This example demonstrates using a repeating select.
+ </p>
+ <netui:form action="post">
+ <netui:select dataSource="pageFlow.results" defaultValue="default Value"
+ optionsDataSource="${pageFlow.opts}" repeater="true"
+ repeatingOrder="null, default, option" nullable="true">
+ <c:if test="${container.metadata.optionStage}">
+ <netui:selectOption repeatingType="option"
+ value="${container.item.optionValue}" styleClass="normalAttr">
+ ${container.item.name}
+ </netui:selectOption>
+ </c:if>
+ <c:if test="${container.metadata.defaultStage}">
+ <netui:selectOption repeatingType="default"
+ value="${container.item}" styleClass="normalAttr">
+ ${container.item}
+ </netui:selectOption>
+ </c:if>
+ <netui:selectOption repeatingType="null" value="null-opt"
+ styleClass="normalAttr">
+ [Nothing]
+ </netui:selectOption>
+ </netui:select>
+ <p><netui:button>Submit</netui:button></p>
+ </netui:form>
+ </netui:body>
+</netui:html>
+]]></source>
+ <p> The <code><netui:select></code> defines the <code>dataSource</code>,
+ <code>defaultValue</code>, and an <code>optionsDataSource</code>. These may
+ all be used to add values to the displayed options. In addition, the "null"
+ option is also set because the <code>nullable</code> attribute is set to <code>true</code>.
+ These are the four sources of options. The <code>repeater</code> attribute is set
+ to <code>true</code>. For this reason, the body of the select will be repeated
+ for each option to be rendered. Finally, the order of the options is specified
+ using the <code>repeatingOrder</code> attribute. This is a comma separated list
+ of the stage names from the table above. In this case, the order of the option
+ will be "null", "default, "option" and the "dataSource" will not be displayed.
+ </p>
+ <source>
+<netui:select dataSource="pageFlow.results" defaultValue="default Value"
+ optionsDataSource="${pageFlow.opts}" repeater="true"
+ <strong>repeatingOrder="null, default, option"</strong> nullable="true">
+</source>
+ <p> The example uses JSTL logic tags to control the evaluation of expressions for each of the
+ stages. To include the JSTL core use the following tag library declaration in the JSP.
+ </p>
+ <source>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+</source>
+ <p>The body of the <code><netui:select></code> will be evaluted once for each
+ option to be rendered. In the body, we use the JSTL <code>if</code> tag to control
+ the evalutation of each option. This is done to prevent expression evaluation errors
+ when the JSP EL expressions are being evalated for each case. In the <code>container</code>
+ implicit object, the current stage name is exposed within the <code>metadata</code>. There
+ is a boolean property for each stage that is true only when options for that stage are being
+ generated. These boolean properties are <code>optionStage</code>, <code>defaultStage</code>,
+ <code>dataSourceStage</code>, and <code>nullStage</code>.
+ </p>
+ <source>
+<c:if test="${container.metadata.optionStage}">
+ <netui:selectOption repeatingType="option"
+ value="${container.item.optionValue}" styleClass="normalAttr">
+ ${container.item.name}
+ </netui:selectOption>
+</c:if>
+<c:if test="${container.metadata.defaultStage}">
+ <netui:selectOption repeatingType="default"
+ value="${container.item}" styleClass="normalAttr">
+ ${container.item}
+ </netui:selectOption>
+</c:if>
+<netui:selectOption repeatingType="null" value="null-opt"
+ styleClass="normalAttr">
+ [Nothing]
+</netui:selectOption>
+</source>
+ <p>
+ The code within the following JSTL <code>if</code> tag will execute only when the
+ <code>optionsDataSource</code> is being evaluated. This allows
+ the expressions used to set the properties to be evaluated against a known type and allows
+ other stages to use different types.
+ </p>
+ <source>
+<c:if test="${container.metadata.optionStage}">
+ ...
+</c:if>
+</source>
+ <p> Within the JSTL <code>if</code> tag, there is a <code><netui:selectOption></code>.
+ The option must identify which stage is being run; this is done by
+ setting the <code>repeatingType</code> attribute to the stage name. The rest of the
+ values are set using the <code>container</code> implicit object. This is set to
+ each item defined for that stage. In this case, it will iterate over the
+ <code>optionsDataSource</code>.
+ </p>
+ <source>
+<netui:selectOption <strong>repeatingType="option"</strong>>
+ value="${container.item.optionValue}" styleClass="normalAttr">
+ ${container.item.name}
+</netui:selectOption>
+</source>
+ <p> The option for the nullable value does not contain any expressions and therefore
+ does not appear inside a JSTL <code>if</code> tag. It will only render an option
+ when the stage becomes <code>null</code> and will be ignored in for all other options.
+ </p>
+ <source>
+<netui:selectOption repeatingType="null" value="null-opt"
+ styleClass="normalAttr">
+ [Nothing]
+</netui:selectOption>
+</source>
+ <p>The page flow controller is a simple controller that contains the properties
+ exposing the options and a property that will be set when the form is posted.
+ The options are built in the <code>onCreate</code> method. For the
+ <code>optionsDataSource</code> each option is defined through an instance
+ of the <code>Options</code> class.
+ </p>
+ <p><strong>Controller.jpf</strong></p>
+ <source>
+package select;
+
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.Controller(
+ simpleActions={
+ @Jpf.SimpleAction(name="begin", path="index.jsp")
+ }
+)
+public class Controller extends PageFlowController
+{
+ private Options[] opts;
+ private String results;
+
+ public Options[] getOpts()
+ {
+ return opts;
+ }
+
+ public void setOpts(Options[] opts)
+ {
+ this.opts = opts;
+ }
+
+ public String getResults()
+ {
+ return results;
+ }
+ public void setResults(String value)
+ {
+ this.results = value;
+ }
+
+ protected void onCreate()
+ {
+ // initialize the opts
+ opts = new Options[3];
+ opts[0] = new Options("Option One","opt-1");
+ opts[1] = new Options("Option Two","opt-2");
+ opts[2] = new Options("Option Three","opt-3");
+ }
+
+ @Jpf.Action(
+ forwards = {
+ @Jpf.Forward(
+ name = "index",
+ path = "Results.jsp")
+ })
+ protected Forward post()
+ {
+ return new Forward("index");
+ }
+
+ public static class Options implements java.io.Serializable {
+ private String _name;
+ private String _optionValue;
+
+ public Options(String name, String value) {
+ _name = name;
+ _optionValue = value;
+ }
+
+ public void setName(String name) {
+ _name = name;
+ }
+ public String getName() {
+ return _name;
+ }
+
+ public void setOptionValue(String optionValue) {
+ _optionValue = optionValue;
+ }
+ public String getOptionValue() {
+ return _optionValue;
+ }
+ }
+}
+</source>
+ </section>
+ </section>
+ </body>
</document>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsTree.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsTree.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsTree.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsTree.xml Thu Jan 26 10:06:32 2006
@@ -367,7 +367,7 @@
<section id="customTreeRenderer">
<title>Using a Custom TreeRenderer Implementation</title>
<p>
- The HTML markup for the tree is handled by the <a href="../apidocs/classref_netui/org/apache/beehive/netui/tags/tree/TreeRenderer.html">TreeRenderer</a> class. By default, TreeRenderer handles tree rendering
+ The HTML markup for the tree is handled by the <a href="apidocs/javadoc/org/apache/beehive/netui/tags/tree/TreeRenderer.html">TreeRenderer</a> class. By default, TreeRenderer handles tree rendering
across the web application, unless another rendering class is specified.
</p>
<p>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tilesSupport.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tilesSupport.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tilesSupport.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tilesSupport.xml Thu Jan 26 10:06:32 2006
@@ -75,7 +75,7 @@
<p>
To use the definitions in a page flow, add the <code>tilesDefinitionsConfigs</code>
attribute to your
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.Controller.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Controller.html">
<code>@Jpf.Controller</code>
</a>
annotation. This attribute takes an array of paths to support the use of multiple
@@ -92,13 +92,13 @@
<title>Using Tiles Definitions as Forwards in a Page Flow Controller</title>
<p>
For any
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.Forward.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Forward.html">
<code>@Jpf.Forward</code>
</a>,
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.SimpleAction.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.SimpleAction.html">
<code>@Jpf.SimpleAction</code>
</a>, or
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ConditionalForward.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ConditionalForward.html">
<code>@Jpf.ConditionalForward</code>
</a>
annotation you've defined in the actions of your controller, you can define
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tutorial_pageflow.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tutorial_pageflow.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tutorial_pageflow.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tutorial_pageflow.xml Thu Jan 26 10:06:32 2006
@@ -18,18 +18,18 @@
<li>How to create a basic NetUI web application.</li>
<li>
How to perform simple user navigation with the
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.SimpleAction.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.SimpleAction.html">
<code>@Jpf.SimpleAction</code>
</a>
annotation.
</li>
<li>
How to coordinate user navigation with the
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.Forward.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Forward.html">
<code>@Jpf.Forward</code>
</a>
annotation and the
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/Forward.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/Forward.html">
<code>Forward</code>
</a>
object.
@@ -217,11 +217,11 @@
<code>web/myFlow</code>.
</note>
<p>Every Page Flow controller class must extend
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/PageFlowController.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/PageFlowController.html">
<code>PageFlowController</code>
</a>
and be decorated by the annotation
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.Controller.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Controller.html">
<code>@Jpf.Controller</code></a>.
The class you created is the simplest controller possible; it has a single <code>begin</code> action that
forwards to <code>index.jsp</code>.
@@ -734,7 +734,7 @@
<title>Add Declarative Validation to the Form Bean</title>
<p>In this step you will use declarative validation to define the set of rules for each
field, to be applied during input validation. You will add a
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidatableProperty.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidatableProperty.html">
<code>ValidatableProperty</code>
</a>
annotation for the <code>name</code> property of the form so that it will (1) be required, and
@@ -785,30 +785,30 @@
<note>
The validation annotations above do <strong>not</strong> produce localized messages. If you want
your messages to be localizable, you would do two things: (1) add a
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.FormBean.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.FormBean.html">
<code>@Jpf.FormBean</code>
</a>
annotation on the <code>ProfileForm</code> class, with its
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.FormBean.html#messageBundle()">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.FormBean.html#messageBundle()">
<code>messageBundle</code>
</a>
attribute set to a valid message bundle, and (2) use the
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidatableProperty.html#displayNameKey()">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidatableProperty.html#displayNameKey()">
<code>displayNameKey</code>
</a>
attribute instead of
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidatableProperty.html#displayName()">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidatableProperty.html#displayName()">
<code>displayName</code>
</a>
on your validation annotations.
<br/>
<br/>
If you don't want to use the default validation messages provided by NetUI, you can use the
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateRequired.html#message()">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateRequired.html#message()">
<code>message</code>
</a>
or
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateRequired.html#messageKey()">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateRequired.html#messageKey()">
<code>messageKey</code>
</a>
attributes on any of the validation annotations.
@@ -816,7 +816,7 @@
<p>
Next, add a
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.Action.html#validationErrorForward()">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Action.html#validationErrorForward()">
<code>validationErrorForward</code>
</a>
to the <code>processData</code> action in <code>web/myFlow/Controller.java</code>:
@@ -999,7 +999,7 @@
<p>Open the file <code>web/myFlow/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/annotations/Jpf.Action.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Action.html">
<code>@Jpf.Action</code>
</a>
annotation of the <code>processData</code> method. The
@@ -1331,7 +1331,7 @@
<p>Open the existing Shared Flow file <code>src/shared/SharedFlow.java</code></p>
<p>
Edit the
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.Controller.html">
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.Controller.html">
<code>@Jpf.Controller</code>
</a>
annotation for the Shared Flow controller class, <code>SharedFlow</code>, in the <code>SharedFlow.java</code> file and add the <code>simpleActions</code> property. Code to add appears in bold. Don't forget the comma after the <code>catches={...}</code> element!</p>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/validation.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/validation.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/validation.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/validation.xml Thu Jan 26 10:06:32 2006
@@ -11,8 +11,8 @@
<p>NetUI offers a declarative validation model. This means that validation tasks are
configured using metadata annotations within Page Flow controller classes.
Annotations for common validation tasks are already provided: e.g.,
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateCreditCard.html">@Jpf.ValidateCreditCard</a>,
- <a href="../apidocs/classref_netui/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateCreditCard.html">@Jpf.ValidateDate</a>, etc.</p>
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateCreditCard.html">@Jpf.ValidateCreditCard</a>,
+ <a href="apidocs/javadoc/org/apache/beehive/netui/pageflow/annotations/Jpf.ValidateCreditCard.html">@Jpf.ValidateDate</a>, etc.</p>
<section id="validation_annos"><title>Validation Annotations</title>
<p>Validation annotations can appear in three different places:</p>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml Thu Jan 26 10:06:32 2006
@@ -141,12 +141,12 @@
</infra>
<controls label="Controls">
<annotations label="Annotations" href="controls/annotations/control_annotations.html"/>
- <javadoc label="API Javadoc" href="apidocs/classref_controls/index.html"/>
+ <javadoc label="API Javadoc" href="controls/apidocs/javadoc/index.html"/>
</controls>
<netui label="NetUI">
<annotations label="Page Flow Annotations" href="netui/annotations/pageflow_annotations.html"/>
- <javadoc label="API Javadoc" href="apidocs/classref_netui/index.html"/>
- <taglib label="JSP Tags" href="apidocs/taglib/index.html"/>
+ <javadoc label="API Javadoc" href="netui/apidocs/javadoc/index.html"/>
+ <taglib label="JSP Tags" href="netui/apidocs/taglib/index.html"/>
<netui_config label="beehive-netui-config.xml" href="netui/config/beehive-netui-config.html">
<config_doctype href="#doctype"/>
<config_description href="#desc"/>
@@ -157,23 +157,23 @@
<system-controls label="System Controls">
<ejb_control_reference label="EJB">
<annotations label="Annotations" href="system-controls/ejb/annotations.html"/>
- <javadoc label="API Javadoc" href="apidocs/system-controls/ejb/index.html"/>
+ <javadoc label="API Javadoc" href="system-controls/ejb/apidocs/javadoc/index.html"/>
</ejb_control_reference>
<jdbc_control_reference label="JDBC">
<annotations label="Annotations" href="system-controls/jdbc/annotations.html"/>
- <javadoc label="API Javadoc" href="apidocs/system-controls/jdbc/index.html"/>
+ <javadoc label="API Javadoc" href="system-controls/jdbc/apidocs/javadoc/index.html"/>
</jdbc_control_reference>
<jms_control_reference label="JMS">
<annotations label="Annotations" href="system-controls/jms/annotations.html"/>
- <javadoc label="API Javadoc" href="apidocs/system-controls/jms/index.html"/>
+ <javadoc label="API Javadoc" href="system-controls/jms/apidocs/javadoc/index.html"/>
</jms_control_reference>
</system-controls>
<javadoc label="API Javadoc">
- <controls label="Controls" href="apidocs/classref_controls/index.html"/>
- <netui label="NetUI" href="apidocs/classref_netui/index.html"/>
- <sc-ejb label="EJB Control" href="apidocs/system-controls/ejb/index.html"/>
- <sc-jdbc label="JDBC Control" href="apidocs/system-controls/jdbc/index.html"/>
- <sc-jms label="JMS Control" href="apidocs/system-controls/jms/index.html"/>
+ <controls label="Controls" href="controls/apidocs/javadoc/index.html"/>
+ <netui label="NetUI" href="netui/apidocs/javadoc/index.html"/>
+ <sc-ejb label="EJB Control" href="system-controls/ejb/apidocs/javadoc/index.html"/>
+ <sc-jdbc label="JDBC Control" href="system-controls/jdbc/apidocs/javadoc/index.html"/>
+ <sc-jms label="JMS Control" href="system-controls/jms/apidocs/javadoc/index.html"/>
</javadoc>
</reference>
<release_notes label="Release Notes" href="release-notes.html"/>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/ejb/annotations.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/ejb/annotations.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/ejb/annotations.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/ejb/annotations.xml Thu Jan 26 10:06:32 2006
@@ -5,8 +5,8 @@
<title>Ejb Control Annotations</title>
</header>
<body>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/ejb/EJBControl.EJBHome.html">@EJBControl.EJBHome</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/ejb/EJBControl.JNDIContextEnv/EJBControl.JNDIContextEnv.html">@EJBControl.JNDIContextEnv</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/ejb/EJBControl.EJBHome.html">@EJBControl.EJBHome</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/ejb/EJBControl.JNDIContextEnv/EJBControl.JNDIContextEnv.html">@EJBControl.JNDIContextEnv</a></p>
</body>
<footer>
<legal>Java, J2EE, and JCP are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.<br/>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jdbc/annotations.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jdbc/annotations.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jdbc/annotations.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jdbc/annotations.xml Thu Jan 26 10:06:32 2006
@@ -5,11 +5,11 @@
<title>JDBC Control Annotations</title>
</header>
<body>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jdbc/JdbcControl.ConnectionDataSource.html">@JdbcControl.ConnectionDataSource</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jdbc/JdbcControl.ConnectionDriver.html">@JdbcControl.ConnectionDriver</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jdbc/JdbcControl.ConnectionOptions.html">@JdbcControl.ConnectionOptions</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jdbc/JdbcControl.SQL.html">@JdbcControl.SQL</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jdbc/JdbcControl.TypeMapper.html">@JdbcControl.TypeMapper</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jdbc/JdbcControl.ConnectionDataSource.html">@JdbcControl.ConnectionDataSource</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jdbc/JdbcControl.ConnectionDriver.html">@JdbcControl.ConnectionDriver</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jdbc/JdbcControl.ConnectionOptions.html">@JdbcControl.ConnectionOptions</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jdbc/JdbcControl.SQL.html">@JdbcControl.SQL</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jdbc/JdbcControl.TypeMapper.html">@JdbcControl.TypeMapper</a></p>
</body>
<footer>
<legal>Java, J2EE, and JCP are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.<br/>
Modified: beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jms/annotations.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jms/annotations.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jms/annotations.xml (original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/system-controls/jms/annotations.xml Thu Jan 26 10:06:32 2006
@@ -5,16 +5,16 @@
<title>JMS Control Annotations</title>
</header>
<body>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.CorrelationId.html">@JMSControl.CorrelationId</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Delivery.html">@JMSControl.Delivery</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Destination.html">@JMSControl.Destination</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Expiration.html">@JMSControl.Expiration</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Message.html">@JMSControl.Message</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Priority.html">@JMSControl.Priority</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Properties.html">@JMSControl.Properties</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Property.html">@JMSControl.Property</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.PropertyValue.html">@JMSControl.PropertyValue</a></p>
- <p><a href="../../apidocs/classref_systemcontrols/org/apache/beehive/controls/system/jms/JMSControl.Type.html">@JMSControl.Type</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.CorrelationId.html">@JMSControl.CorrelationId</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Delivery.html">@JMSControl.Delivery</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Destination.html">@JMSControl.Destination</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Expiration.html">@JMSControl.Expiration</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Message.html">@JMSControl.Message</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Priority.html">@JMSControl.Priority</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Properties.html">@JMSControl.Properties</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Property.html">@JMSControl.Property</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.PropertyValue.html">@JMSControl.PropertyValue</a></p>
+ <p><a href="apidocs/javadoc/org/apache/beehive/controls/system/jms/JMSControl.Type.html">@JMSControl.Type</a></p>
</body>
<footer>
<legal>Java, J2EE, and JCP are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.<br/>
Modified: beehive/trunk/netui/ant/javadoc.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/netui/ant/javadoc.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/netui/ant/javadoc.xml (original)
+++ beehive/trunk/netui/ant/javadoc.xml Thu Jan 26 10:06:32 2006
@@ -17,17 +17,10 @@
$Header:$
-->
-<project name="Beehive/NetUI/Javadoc" default="usage" basedir=".">
+<project name="Beehive/NetUI/Documentation" default="usage" basedir=".">
<import file="../netui-imports.xml"/>
- <property name="docs.build.dir" location="${build.dir}/docs"/>
- <property name="docs.temp" value="${docs.build.dir}/temp"/>
- <property name="xalan.jar" location="${docs.dir}/external/xalan.jar"/>
- <property name="doclet.jar" location="${docs.dir}/tools/lib/jsptagrefdoclet_single.jar"/>
-
- <available file="${jars.dir}" type="dir" property="resources.present"/>
-
<path id="javadoc.classpath">
<fileset dir="${jars.dir}" includes="*.jar"/>
<path refid="commons-el.dependency.path"/>
@@ -42,41 +35,25 @@
<path refid="tools.dependency.path"/>
<path refid="ant-jar.dependency.path"/>
</path>
-
- <target name="usage">
- <echo message="================================================================================"/>
- <echo message="| Usage |"/>
- <echo message="================================================================================"/>
- <echo message="build - Cleans and builds all doc, copies the result to the forrest site. "/>
- <echo message="clean - Deletes the built netui docs and associated temp files."/>
- <echo message="generate-class-ref - Generates the NetUI class reference, using the standard Javadoc doclet."/>
- <echo message="generate-taglib-ref - Generates the NetUI Tag Library reference."/>
- <echo message="copy-to-forrest - Copies the built netui docs to the forrest site."/>
- <echo message="================================================================================"/>
- <echo message="| |"/>
- <echo message="================================================================================"/>
- </target>
-
- <target name="build" depends="check-for-resources"
- description="Generates Javadoc for all core classes and tags, copies docs to the build directory for distribution, also copies all docs to the forrest directory.">
- <antcall target="clean"/>
+
+ <target name="build" description="Generates documentation for classes and JSP tags">
<antcall target="generate-class-ref"/>
<antcall target="generate-taglib-ref"/>
<fixcrlf srcDir="${build.dir}/docs/apidocs" includes="**/*.html"/>
</target>
<target name="clean">
- <delete dir="${docs.temp}" failonerror="false"/>
- <delete dir="${build.dir}/docs" failonerror="false"/>
- <delete dir="${docs.dir}/temp" failonerror="false"/>
+ <delete dir="${build.dir}/docs"/>
</target>
- <!-- The 'use' attribute is currently set to 'false' because of Java bug 5055723.
+ <!--
+ The 'use' attribute is currently set to 'false' because of Java bug 5055723.
This bug will be fixed for the general release of JDK5.
Track the bug at: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5055723
- When the fix arrives in JDK5, set use="true". -->
+ When the fix arrives in JDK5, set use="true".
+ -->
<target name="generate-class-ref">
- <javadoc destdir="${build.dir}/docs/apidocs/classref_netui"
+ <javadoc destdir="${build.dir}/docs/apidocs"
maxmemory="256M"
windowtitle="Apache Beehive NetUI API Documentation (Version ${beehive.version})"
doctitle="Apache Beehive NetUI API Documentation (Version ${beehive.version})"
@@ -96,9 +73,7 @@
<tag name="created" enabled="false" description=""/>
<tag name="ant.element" enabled="false" description=""/>
<tag name="netui\:tag" enabled="false" description=""/>
- <tag name="netui.tldx\:tag" enabled="false" description=""/>
<tag name="netui\:attribute" enabled="false" description=""/>
- <tag name="netui.tldx\:attribute" enabled="false" description=""/>
<tag name="netui\:jspfunction" enabled="false" description=""/>
<tag name="netui\:jspfunctions" enabled="false" description=""/>
<tag name="todo" enabled="false" description=""/>
@@ -112,7 +87,6 @@
<packageset dir="${src.dir}/pageflow"/>
<packageset dir="${src.dir}/scoping"/>
<packageset dir="${src.dir}/tags-databinding"/>
- <packageset dir="${src.dir}/simple-tags"/>
<packageset dir="${src.dir}/tags-html"/>
<packageset dir="${src.dir}/tags-template"/>
<packageset dir="${src.dir}/util"/>
@@ -120,35 +94,30 @@
</target>
<target name="generate-taglib-ref"
- description="Uses a custom doclet to generate HTML topics from Java source files.">
- <delete dir="${docs.temp}" failonerror="false"/>
- <delete dir="${build.dir}/docs/apidocs/taglib" failonerror="false"/>
- <mkdir dir="${build.dir}/docs/apidocs/taglib"/>
- <mkdir dir="${docs.temp}/tld"/>
- <mkdir dir="${docs.temp}/xml/tagref"/>
- <mkdir dir="${docs.temp}/html/tagref"/>
- <antcall target="copy-tld-files"/>
- <path id="doclet.path">
+ description="Uses a custom doclet to generate HTML topics from Java source files.">
+
+ <property name="title" value="NetUI Tag Library Documentation (Version ${beehive.version})"/>
+
+ <mkdir dir="${build.dir}/docs/taglib"/>
+
+ <path id="_tagref.doclet.path">
<path refid="xbean.dependency.path"/>
- <fileset file="${doclet.jar}"/>
- <fileset file="${xalan.jar}"/>
+ <pathelement location="${docs.dir}/external/xalan.jar"/>
+ <pathelement location="${docs.dir}/tools/lib/jsptagrefdoclet_single.jar"/>
</path>
- <javadoc classpathref="javadoc.classpath"
- destdir="${docs.temp}/xml/tagref">
- <doclet name="org.apache.beehive.netui.tools.doclet.jsptagref.JspTagDoc"
- pathref="doclet.path">
+
+ <javadoc classpathref="javadoc.classpath" destdir="${build.dir}/docs/taglib">
+ <doclet name="org.apache.beehive.netui.tools.doclet.jsptagref.JspTagDoc" pathref="_tagref.doclet.path">
<param name="-source" value="1.5"/>
- <param name="-tldpath" value="${docs.temp}/tld"/>
- <param name="-d" value="${build.dir}/docs/apidocs/taglib"/>
+ <param name="-tldpath" value="${tlds.dir}"/>
<param name="-contentsource" value="jsptagref"/>
<param name="-tag" value="see"/>
<param name="-tag" value="example"/>
<param name="-breakiterator"/>
- <param name="-header" value="NetUI Tag Library Documentation"/>
- <param name="-doctitle" value="NetUI Tag Library Documentation"/>
- <param name="-windowtitle" value="NetUI Tag Library Documentation"/>
+ <param name="-header" value="${title}"/>
+ <param name="-doctitle" value="${title}"/>
+ <param name="-windowtitle" value="${title}"/>
</doclet>
- <link href="../classref_netui"/>
<link href="http://java.sun.com/j2se/1.5/docs/api/"/>
<packageset dir="${src.dir}/tags-databinding">
<include name="org/apache/beehive/netui/tags/databinding/bundle"/>
@@ -168,35 +137,31 @@
<include name="org/apache/beehive/netui/tags/javascript"/>
<include name="org/apache/beehive/netui/tags/tree"/>
</packageset>
- <packageset dir="${src.dir}/simple-tags">
- <include name="org/apache/beehive/netui/simpletags/jsptags"/>
- </packageset>
<packageset dir="${src.dir}/tags-template">
<include name="org/apache/beehive/netui/tags/template"/>
</packageset>
</javadoc>
- <delete file="${docs.build.dir}/apidocs/taglib/taglib-frame-ignore.html" failonerror="false"/>
- <delete file="${docs.build.dir}/apidocs/taglib/taglib-summary-ignore.html" failonerror="false"/>
- <!-- <delete dir="${docs.temp}" failonerror="false"/> -->
+ <delete file="${build.dir}/docs/taglib/taglib-frame-ignore.html" failonerror="false"/>
+ <delete file="${build.dir}/docs/taglib/taglib-summary-ignore.html" failonerror="false"/>
</target>
- <!-- Get the latest TLD files and unzip them to a temp folder. From there, they'll be grabbed by
- the JspTagRef doclet for generating tag topics. -->
- <target name="copy-tld-files" description="copies tld files to another directory, the copies are modified by insert-namespace-for-tld">
- <delete dir="${docs.temp}/tld" failonerror="false"/>
- <mkdir dir="${docs.temp}/tld"/>
- <copy todir="${docs.temp}/tld" overwrite="true">
- <fileset dir="${tlds.dir}" includes="**/*.tld"/>
- </copy>
- </target>
-
<target name="make-doclet-jar"
- description="Utiltiy function that re-JARs jsptagrefdoclet.jar. Use this target if you make changes to the XSLT files, or other files, imbedded in jsptagrefdoclet.jar">
+ description="Re-JAR the jsptagrefdoclet.jar. Use this target if you make changes to the XSLT files, or other files, embedded in jsptagrefdoclet.jar">
<jar jarfile="${docs.dir}/tools/lib/jsptagrefdoclet.jar" basedir="${docs.dir}/tools/docletsrc"/>
</target>
-
- <target name="check-for-resources" unless="resources.present">
- <ant dir="../../" target="deploy"/>
- </target>
+ <target name="usage">
+ <echo message="================================================================================"/>
+ <echo message="| Usage |"/>
+ <echo message="================================================================================"/>
+ <echo message="build - Cleans and builds all doc, copies the result to the forrest site. "/>
+ <echo message="clean - Deletes the built netui docs and associated temp files."/>
+ <echo message="generate-class-ref - Generates the NetUI class reference, using the standard Javadoc doclet."/>
+ <echo message="generate-taglib-ref - Generates the NetUI Tag Library reference."/>
+ <echo message="copy-to-forrest - Copies the built netui docs to the forrest site."/>
+ <echo message="================================================================================"/>
+ <echo message="| |"/>
+ <echo message="================================================================================"/>
+ </target>
+
</project>
Modified: beehive/trunk/system-controls/ant/javadoc.xml
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/ant/javadoc.xml?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/system-controls/ant/javadoc.xml (original)
+++ beehive/trunk/system-controls/ant/javadoc.xml Thu Jan 26 10:06:32 2006
@@ -60,7 +60,7 @@
<target name="build" description="Generates Javadoc for all classes.">
<antcall target="clean"/>
<antcall target="generate-class-ref"/>
- <fixcrlf srcDir="${build.dir}/docs/apidocs" includes="**/*.html"/>
+ <fixcrlf srcDir="${build.dir}/docs" includes="**/*.html"/>
</target>
<target name="clean">
@@ -84,7 +84,7 @@
<attribute name="controlname" description="The name of the control to Javadoc"/>
<attribute name="displayname" description="The display name of the Javadoc'ed control"/>
<sequential>
- <javadoc destdir="${build.dir}/docs/apidocs/system-controls/@{controlname}/classref/"
+ <javadoc destdir="${build.dir}/docs/@{controlname}/apidocs"
maxmemory="256M"
windowtitle="Apache Beehive @{displayname} Controls API Documentation (Version ${beehive.version})"
doctitle="Apache Beehive @{displayname} Controls API Documentation (Version ${beehive.version})"
Modified: beehive/trunk/system-controls/src/jms/org/apache/beehive/controls/system/jms/impl/JMSControlImpl.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/src/jms/org/apache/beehive/controls/system/jms/impl/JMSControlImpl.java?rev=372578&r1=372577&r2=372578&view=diff
==============================================================================
--- beehive/trunk/system-controls/src/jms/org/apache/beehive/controls/system/jms/impl/JMSControlImpl.java (original)
+++ beehive/trunk/system-controls/src/jms/org/apache/beehive/controls/system/jms/impl/JMSControlImpl.java Thu Jan 26 10:06:32 2006
@@ -100,7 +100,7 @@
}
/**
- * Get the JMS {@link Destination}. Implementation of the
+ * Get the JMS {@link javax.jms.Destination}. Implementation of the
* {@link org.apache.beehive.controls.system.jms.JMSControl#getDestination()} method.
*/
public javax.jms.Destination getDestination() throws ControlException {