You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by mu...@apache.org on 2007/03/03 06:33:36 UTC

svn commit: r514082 [1/2] - in /struts/struts2/trunk/core/src: main/java/org/apache/struts2/components/ main/java/org/apache/struts2/views/ main/java/org/apache/struts2/views/annotations/ main/java/org/apache/struts2/views/freemarker/tags/ main/java/or...

Author: musachy
Date: Fri Mar  2 21:33:30 2007
New Revision: 514082

URL: http://svn.apache.org/viewvc?view=rev&rev=514082
Log:
WW-1607 Separate dojo-related tags into their own plugin

Added:
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java
    struts/struts2/trunk/core/src/site/resources/tags/ajax/
    struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/div.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/submit.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/tabbedPanel.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/tree.html
    struts/struts2/trunk/core/src/site/resources/tags/ajax/treenode.html
Removed:
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/AbstractRemoteCallUIBean.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Autocompleter.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/DateTimePicker.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/RemoteUICallBean.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/TabbedPanel.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Tree.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/TreeNode.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/AutocompleterModel.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/DateTimePickerModel.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/TabbedPanelModel.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/TreeModel.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/TreeNodeModel.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractRemoteCallUITag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AutocompleterTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DateTimePickerTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/TabbedPanelTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/TreeNodeTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/TreeTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/velocity/components/AutocompleterDirective.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/velocity/components/DateTimePickerDirective.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/velocity/components/TabbedPanelDirective.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/velocity/components/TreeDirective.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/velocity/components/TreeNodeDirective.java
    struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/
    struts/struts2/trunk/core/src/main/resources/template/ajax/
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/AutocompleterTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/Category.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/SubmitAjaxTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/TreeTest.java
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/Autocompleter-1.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/Autocompleter-2.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/DateTimePickerTagTest-1.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-1.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-2.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-3.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/TabbedPanel-4.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/submit-ajax-1.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/submit-ajax-2.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/submit-ajax-3.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/tree-1.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/tree-2.txt
Modified:
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Anchor.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Div.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Submit.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DivTag.java
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java
    struts/struts2/trunk/core/src/site/resources/tags/a.html
    struts/struts2/trunk/core/src/site/resources/tags/div.html
    struts/struts2/trunk/core/src/site/resources/tags/submit.html
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/components/UIComponentTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/AnchorTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxListTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ComboBoxTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DivTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/DoubleSelectTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/FileTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/HeadTagTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/HiddenTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/LabelTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/PasswordTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/RadioTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ResetTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/SelectTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/SubmitTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/TextareaTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/TextfieldTest.java
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/UpDownSelectTagTest.java
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/div-1.txt
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/href-1.txt

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Anchor.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Anchor.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Anchor.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Anchor.java Fri Mar  2 21:33:30 2007
@@ -31,109 +31,29 @@
 /**
  * <!-- START SNIPPET: javadoc -->
  *
- * A tag that creates a HTML &lt;a href='' /&gt; that when clicked calls a URL remote XMLHttpRequest call via the dojo
- * framework.<p/>
- *
- * <!-- START SNIPPET: ajaxJavadoc -->
- * <B>THE FOLLOWING IS ONLY VALID WHEN AJAX IS CONFIGURED</B>
- * <ul>
- *      <li>href</li>
- *      <li>errorText</li>
- *      <li>listenTopics</li>
- *      <li>notifyTopics</li>
- *      <li>executeScripts</li>
- *      <li>loadingText</li>
- *      <li>listenTopics</li>
- *      <li>handler</li>
- *      <li>formId</li>
- *      <li>formFilter</li>
- *      <li>targets</li>
- *      <li>showErrorTransportText</li>
- *      <li>targets</li>
- *      <li>indicator</li>
- * </ul>
- * 'resultDivId' Deprecated. Use targets.<p/>
- * 'targets' is a list of element ids whose content will be updated with the
- * text returned from request.<p/>
- * 'errorText' is the text that will be displayed when there is an error making the request.<p/>
- * 'onLoadJS' Deprecated. Use 'notifyTopics'.<p/>
- * 'preInvokeJS' Deprecated. Use 'notifyTopics'.<p/>
- * 'executeScripts' if set to true will execute javascript sections in the returned text.<p/>
- * 'loadingText' is the text that will be displayed on the 'targets' elements while making the
- * request.<p/>
- * 'handler' is the name of the function that will take care of making the AJAX request. Dojo's widget
- * and dom node are passed as parameters).<p/>
- * 'formId' is the id of the html form whose fields will be seralized and passed as parameters
- * in the request.<p/>
- * 'formFilter' is the name of a function which will be used to filter the fields that will be
- * seralized. This function takes as a parameter the element and returns true if the element
- * should be included.<p/>
- * 'listenTopics' comma separated list of topics names, that will trigger a request
- * 'indicator' element to be shown while the request executing
- * 'showErrorTransportText': whether errors should be displayed (on 'targets')</p>
- * 'showLoadingText' show loading text on targets</p>
- * 'notifyTopics' comma separated list of topics names, that will be published. Three parameters are passed:<p/>
- * <ul>
- *      <li>data: html or json object when type='load' or type='error'</li>
- *      <li>type: 'before' before the request is made, 'load' when the request succeeds, or 'error' when it fails</li>
- *      <li>request: request javascript object, when type='load' or type='error'</li>
- * </ul>
+ * A tag that creates a HTML &lt;a &gt;.<p/>
  * <!-- END SNIPPET: javadoc -->
- *
+ * 
  * <p/> <b>Examples</b>
  *
  * <pre>
  * <!-- START SNIPPET: example1 -->
- * &lt;s:a id="link1" theme="ajax" href="/DoIt.action" errorText="An error ocurred" loadingText="Loading..."&gt;
+ * &lt;s:a id="link1" theme="ajax" href="/DoIt.action"&gt;
  *     &lt;img border="none" src="&lt;%=request.getContextPath()%&gt;/images/delete.gif"/&gt;
  *     &lt;s:param name="id" value="1"/&gt;
  * &lt;/s:a&gt;
  * <!-- END SNIPPET: example1 -->
  * </pre>
  *
- * </p>
- *
- * <!-- START SNIPPET: exampledescription1 -->
- *
- * Results in
- *
- * <!-- END SNIPPET: exampledescription1 -->
- *
- * </p>
- *
- * <pre>
- * <!-- START SNIPPET: example2 -->
- * &lt;a dojoType="BindAnchor" executeScripts="true" id="link1" href="/DoIt.action?id=1" errorText="An error ocurred"&gt;&lt;/a&gt;
- * <!-- END SNIPPET: example2 -->
- * </pre>
- *
- * </p>
- *
- * <!-- START SNIPPET: exampledescription2 -->
- *
- * Here is an example that uses the beforeLoading. This example is in altSyntax=true:
- *
- * <!-- END SNIPPET: exampledescription2 -->
- *
- * </p>
- *
- * <pre>
- * <!-- START SNIPPET: example3 -->
- * &lt;s:a id="test" theme="ajax" href="/simpeResult.action" beforeLoading="confirm('Are you sure?')"&gt;
- *  A
- * &lt;/s:a&gt;
- * <!-- END SNIPPET: example3 -->
- * </pre>
- *
  */
 @StrutsTag(name="a", tldTagClass="org.apache.struts2.views.jsp.ui.AnchorTag", description="Render a HTML href element that when clicked can optionally call a URL via remote XMLHttpRequest and updates its targets")
-public class Anchor extends AbstractRemoteCallUIBean {
+public class Anchor extends ClosingUIBean {
     public static final String OPEN_TEMPLATE = "a";
     public static final String TEMPLATE = "a-close";
     public static final String COMPONENT_NAME = Anchor.class.getName();
 
-    protected String targets;
-
+    protected String href;
+    
     public Anchor(ValueStack stack, HttpServletRequest request, HttpServletResponse response) {
         super(stack, request, response);
     }
@@ -145,27 +65,16 @@
     protected String getDefaultTemplate() {
         return TEMPLATE;
     }
-
+    
     public void evaluateExtraParams() {
         super.evaluateExtraParams();
 
-        if(targets != null)
-            addParameter("targets", findString(targets));
+        if (href != null)
+            addParameter("href", findString(href));
     }
-
-    @StrutsTagAttribute(description="Comma delimited list of ids of the elements whose content will be updated")
-    public void setTargets(String targets) {
-        this.targets = targets;
-    }
-
-    @StrutsTagAttribute(name="onLoadJS", description="Deprecated. Use 'notifyTopics'. Javascript code execute after reload")
-    public void setAfterLoading(String afterLoading) {
-        this.afterLoading = afterLoading;
-    }
-
-
-    @StrutsTagAttribute(name="preInvokeJS", description="Deprecated. Use 'notifyTopics'. Javascript code execute before reload")
-    public void setBeforeLoading(String beforeLoading) {
-        this.beforeLoading = beforeLoading;
+    
+    @StrutsTagAttribute(description="The URL.")
+    public void setHref(String href) {
+        this.href = href;
     }
 }

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Div.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Div.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Div.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Div.java Fri Mar  2 21:33:30 2007
@@ -24,102 +24,22 @@
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.struts2.views.annotations.StrutsTag;
-import org.apache.struts2.views.annotations.StrutsTagAttribute;
 
 import com.opensymphony.xwork2.util.ValueStack;
 
 /**
  * <!-- START SNIPPET: javadoc -->
- * The div tag when used on the ajax theme, provides a remote call
- * from the current page to update a section of content without having to refresh the entire page.
- * <p>
- * It creates a HTML &lt;DIV /&gt; that obtains it's content via a remote XMLHttpRequest call via
- * the dojo framework.
- * </p>
- * <div>
- * <!-- START SNIPPET: ajaxJavadoc -->
- * <B>THE FOLLOWING IS ONLY VALID WHEN AJAX IS CONFIGURED</B>
- * <ul>
- *      <li>href</li>
- *      <li>errorText</li>
- *      <li>afterLoading</li>
- *      <li>executeScripts</li>
- *      <li>loadingText</li>
- *      <li>listenTopics</li>
- *      <li>handler</li>
- *      <li>formId</li>
- *      <li>formFilter</li>
- *      <li>targets</li>
- *      <li>notifyTopics</li>
- *      <li>showErrorTransportText</li>
- *      <li>indicator</li>
- * </ul>
- * 'targets' is a list of element ids whose content will be updated with the
- * text returned from request.<p/>
- * 'href' needs to be set as an url tag reference value.<p/>
- * 'errorText' is the text that will be displayed when there is an error making the request.<p/>
- * 'afterLoading' Deprecated. Use 'notifyTopics'.<p/>
- * 'executeScripts' if set to true will execute javascript sections in the returned text.<p/>
- * 'loadingText' is the text that will be displayed on the 'targets' elements while making the
- * request.<p/>
- * 'handler' is the name of the function that will take care of making the AJAX request. Dojo's widget
- * and dom node are passed as parameters).<p/>
- * 'formId' is the id of the html form whose fields will be seralized and passed as parameters
- * in the request.<p/>
- * 'formFilter' is the name of a function which will be used to filter the fields that will be
- * seralized. This function takes as a parameter the element and returns true if the element
- * should be included.<p/>
- * 'updateFreq' sets(in milliseconds) the update interval.<p/>
- * 'autoStart' if set to true(true by default) starts the timer automatically<p/>
- * 'startTimerListenTopics' is a comma-separated list of topics used to start the timer<p/>
- * 'stopTimerListenTopics' is a comma-separated list of topics used to stop the timer<p/>
- * 'listenTopics' comma separated list of topics names, that will trigger a request<p/>
- * 'indicator' element to be shown while the request executing<p/>
- * 'showErrorTransportText': whether errors should be displayed (on 'targets')</p>
- * 'showLoadingText' show loading text on targets</p>
- * 'separateScript' Run scripts in a separate scope, unique for each Div<p/>
- * 'notifyTopics' comma separated list of topics names, that will be published. Three parameters are passed:<p/>
- * <ul>
- *      <li>data: html or json object when type='load' or type='error'</li>
- *      <li>type: 'before' before the request is made, 'load' when the request succeeds, or 'error' when it fails</li>
- *      <li>request: request javascript object, when type='load' or type='error'</li>
- * </ul>
+ * Creates an HTML &lt;div&gt;
  * <!-- END SNIPPET: javadoc -->
- * </div><p> <b>Examples</b>
- *
- * <pre>
- *       <!-- START SNIPPET: example -->
- * &lt;s:url id="url" action="AjaxTest" />
- * &lt;s:div
- *    id=&quot;once&quot;
- *    theme=&quot;ajax&quot;
- *    href=&quot;%{url}&quot;
- *    loadingText=&quot;Loading...&quot;
- *    listenTopics=&quot;/refresh&quot;
- *    updateFreq=&quot;3000&quot;
- *    autoStart=&quot;true&quot;
- *    formId=&quot;form&quot;
- *&gt;&lt;/s:div&gt;
- *       <!-- END SNIPPET: example -->
- * </pre>
- * </p>
  *
  */
 @StrutsTag(name="div", tldTagClass="org.apache.struts2.views.jsp.ui.DivTag", description="Render HTML div providing content from remote call via AJAX")
-public class Div extends AbstractRemoteCallUIBean {
+public class Div extends ClosingUIBean {
 
     public static final String TEMPLATE = "div";
     public static final String TEMPLATE_CLOSE = "div-close";
     public static final String COMPONENT_NAME = Div.class.getName();
 
-    protected String updateFreq;
-    protected String autoStart;
-    protected String delay;
-    protected String startTimerListenTopics;
-    protected String stopTimerListenTopics;
-    protected String refreshOnShow;
-    protected String separateScripts;
-
     public Div(ValueStack stack, HttpServletRequest request, HttpServletResponse response) {
         super(stack, request, response);
     }
@@ -130,64 +50,5 @@
 
     protected String getDefaultTemplate() {
         return TEMPLATE_CLOSE;
-    }
-
-    public void evaluateExtraParams() {
-        super.evaluateExtraParams();
-
-        if (updateFreq != null)
-            addParameter("updateFreq", findValue(updateFreq, Integer.class));
-        if (autoStart != null)
-            addParameter("autoStart", findValue(autoStart, Boolean.class));
-        if (refreshOnShow != null)
-            addParameter("refreshOnShow", findValue(refreshOnShow, Boolean.class));
-        if (delay != null)
-            addParameter("delay", findValue(delay, Integer.class));
-        if (startTimerListenTopics != null)
-            addParameter("startTimerListenTopics", findString(startTimerListenTopics));
-        if (stopTimerListenTopics != null)
-            addParameter("stopTimerListenTopics", findString(stopTimerListenTopics));
-        if (separateScripts != null)
-            addParameter("separateScripts", findValue(separateScripts, Boolean.class));
-    }
-
-    @StrutsTagAttribute(description="Start timer automatically", type="Boolean", defaultValue="true")
-    public void setAutoStart(String autoStart) {
-        this.autoStart = autoStart;
-    }
-
-    @StrutsTagAttribute(description="How long to wait before fetching the content (in milliseconds)",  type="Integer")
-    public void setDelay(String delay) {
-        this.delay = delay;
-    }
-
-    @StrutsTagAttribute(description="How often to reload the content (in milliseconds)", type="Integer")
-    public void setUpdateFreq(String updateInterval) {
-        this.updateFreq = updateInterval;
-    }
-
-    @StrutsTagAttribute(description="Topics that will start the timer (for autoupdate)")
-    public void setStartTimerListenTopics(String startTimerListenTopic) {
-        this.startTimerListenTopics = startTimerListenTopic;
-    }
-
-    @StrutsTagAttribute(description="Topics that will stop the timer (for autoupdate)")
-    public void setStopTimerListenTopics(String stopTimerListenTopic) {
-        this.stopTimerListenTopics = stopTimerListenTopic;
-    }
-
-    @StrutsTagAttribute(description="Content will be loaded when div becomes visible, used only inside tabbedPanel", type="Boolean", defaultValue="false")
-    public void setRefreshOnShow(String refreshOnShow) {
-        this.refreshOnShow = refreshOnShow;
-    }
-
-    @StrutsTagAttribute(description="Deprecated. Use 'notifyTopics'. Javascript code execute after reload")
-    public void setAfterLoading(String afterLoading) {
-        this.afterLoading = afterLoading;
-    }
-
-    @StrutsTagAttribute(description="Run scripts in a separate scope, unique for each Div", defaultValue="true")
-    public void setSeparateScripts(String separateScripts) {
-        this.separateScripts = separateScripts;
     }
 }

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Submit.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Submit.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Submit.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Submit.java Fri Mar  2 21:33:30 2007
@@ -44,125 +44,13 @@
  * Please note that the button type has advantages by adding the possibility to seperate the submitted value from the
  * text shown on the button face, but has issues with Microsoft Internet Explorer at least up to 6.0
  * <!-- END SNIPPET: javadoc -->
- *
- * <p/> <b>Examples</b>
- * <pre>
- * <!-- START SNIPPET: example -->
- * &lt;s:submit value="%{'Submit'}" /&gt;
- * <!-- END SNIPPET: example -->
- * </pre>
- * <pre>
- * <!-- START SNIPPET: example2 -->
- * Render an image submit:
- * &lt;s:submit type="image" value="%{'Submit'}" label="Submit the form" src="submit.gif"/&gt;
- * <!-- END SNIPPET: example2 -->
- * </pre>
- * <pre>
- * <!-- START SNIPPET: example3 -->
- * Render an button submit:
- * &lt;s:submit type="button" value="%{'Submit'}" label="Submit the form"/&gt;
- * <!-- END SNIPPET: example3 -->
- * </pre>
- *
- * <!-- START SNIPPET: ajaxJavadoc -->
- * <B>THE FOLLOWING IS ONLY VALID WHEN AJAX IS CONFIGURED</B>
- * <ul>
- *      <li>href</li>
- *      <li>errorText</li>
- *      <li>listenTopics</li>
- *      <li>notifyTopics</li>
- *      <li>executeScripts</li>
- *      <li>loadingText</li>
- *      <li>listenTopics</li>
- *      <li>handler</li>
- *      <li>formId</li>
- *      <li>formFilter</li>
- *      <li>targets</li>
- *      <li>showErrorTransportText</li>
- *      <li>targets</li>
- *      <li>indicator</li>
- * </ul>
- * 'resultDivId' Deprecated. Use targets.</p>
- * 'targets' is a list of element ids whose content will be updated with the
- * text returned from request.<p/>
- * 'errorText' is the text that will be displayed when there is an error making the request.<p/>
- * 'onLoadJS' Deprecated. Use 'notifyTopics'.<p/>
- * 'preInvokeJS' Deprecated. Use 'notifyTopics'.<p/>
- * 'executeScripts' if set to true will execute javascript sections in the returned text.<p/>
- * 'loadingText' is the text that will be displayed on the 'targets' elements while making the
- * request.<p/>
- * 'handler' is the name of the function that will take care of making the AJAX request. Dojo's widget
- * and dom node are passed as parameters).<p/>
- * 'formId' is the id of the html form whose fields will be seralized and passed as parameters
- * in the request.<p/>
- * 'formFilter' is the name of a function which will be used to filter the fields that will be
- * seralized. This function takes as a parameter the element and returns true if the element
- * should be included.<p/>
- * 'listenTopics' comma separated list of topics names, that will trigger a request
- * 'indicator' element to be shown while the request executing
- * 'showErrorTransportText': whether errors should be displayed (on 'targets')</p>
- * 'showLoadingText' show loading text on targets</p>
- * 'notifyTopics' comma separated list of topics names, that will be published. Three parameters are passed:<p/>
- * <ul>
- *      <li>data: html or json object when type='load' or type='error'</li>
- *      <li>type: 'before' before the request is made, 'load' when the request succeeds, or 'error' when it fails</li>
- *      <li>request: request javascript object, when type='load' or type='error'</li>
- * </ul>
- * <!-- END SNIPPET: ajaxJavadoc -->
- *
- * <!-- START SNIPPET: ajxExDescription1 -->
- * Show the results in another div. If you want your results to be shown in
- * a div, use the resultDivId where the id is the id of the div you want them
- * shown in. This is an inner HTML approah. Your results get jammed into
- * the div for you. Here is a sample of this approach:
- * <!-- END SNIPPET: ajxExDescription1 -->
- *
- * <pre>
- * <!-- START SNIPPET: ajxExample1 -->
- * Remote form replacing another div:
- * &lt;div id='two' style="border: 1px solid yellow;"&gt;Initial content&lt;/div&gt;
- * &lt;s:form
- *       id='theForm2'
- *       cssStyle="border: 1px solid green;"
- *       action='/AjaxRemoteForm.action'
- *       method='post'
- *       theme="ajax"&gt;
- *
- *   &lt;input type='text' name='data' value='Struts User' /&gt;
- *   &lt;s:submit value="GO2" theme="ajax" resultDivId="two" /&gt;
- *
- * &lt;/s:form &gt;
- * <!-- END SNIPPET: ajxExample1 -->
- * </pre>
- *
  */
 @StrutsTag(name="submit", tldTagClass="org.apache.struts2.views.jsp.ui.SubmitTag", description="Render a submit button")
-public class Submit extends FormButton implements RemoteUICallBean{
+public class Submit extends FormButton {
     
     private static final Log LOG = LogFactory.getLog(Submit.class);
-    
     final public static String TEMPLATE = "submit";
-
-    protected String href;
-    protected String errorText;
-    protected String executeScripts;
-    protected String loadingText;
-    protected String listenTopics;
-    protected String handler;
-    protected String formId;
-    protected String formFilter;
     protected String src;
-    protected String notifyTopics;
-    protected String showErrorTransportText;
-    protected String indicator;
-    protected String showLoadingText;
-    //these two are called "preInvokeJS" and "onLoadJS" on the tld
-    //Names changed here to keep some consistency
-    protected String beforeLoading;
-    protected String afterLoading;
-
-    //this one is called "resultDivId" on the tld
-    protected String targets;
 
     public Submit(ValueStack stack, HttpServletRequest request, HttpServletResponse response) {
         super(stack, request, response);
@@ -183,40 +71,12 @@
 
         super.evaluateParams();
     }
-
+    
     public void evaluateExtraParams() {
         super.evaluateExtraParams();
-
-        if (href != null)
-            addParameter("href", findString(href));
-        if (errorText != null)
-            addParameter("errorText", findString(errorText));
-        if (loadingText != null)
-            addParameter("loadingText", findString(loadingText));
-        if (afterLoading != null)
-            addParameter("afterLoading", findString(afterLoading));
-        if (beforeLoading != null)
-            addParameter("beforeLoading", findString(beforeLoading));
-        if (executeScripts != null)
-            addParameter("executeScripts", findValue(executeScripts, Boolean.class));
-        if (listenTopics != null)
-            addParameter("listenTopics", findString(listenTopics));
-        if (notifyTopics != null)
-            addParameter("notifyTopics", findString(notifyTopics));
-        if (handler != null)
-            addParameter("handler", findString(handler));
-        if (formId != null)
-            addParameter("formId", findString(formId));
-        if (formFilter != null)
-            addParameter("formFilter", findString(formFilter));
+        
         if (src != null)
             addParameter("src", findString(src));
-        if (indicator != null)
-            addParameter("indicator", findString(indicator));
-        if (targets != null)
-            addParameter("targets", findString(targets));
-        if (showLoadingText != null)
-            addParameter("showLoadingText", findString(showLoadingText));
     }
 
     /**
@@ -228,6 +88,11 @@
         return true;
     }
     
+    @StrutsTagAttribute(description="Supply an image src for <i>image</i> type submit button. Will have no effect for types <i>input</i> and <i>button</i>.")
+    public void setSrc(String src) {
+        this.src = src;
+    }
+    
     /**
      * Overrides to be able to render body in a template rather than always before the template
      */
@@ -245,94 +110,5 @@
         }
 
         return false;
-    }
-
-    @StrutsTagAttribute(description="Topic that will trigger the remote call")
-    public void setListenTopics(String listenTopics) {
-        this.listenTopics = listenTopics;
-    }
-
-    @StrutsTagAttribute(description="The theme to use for the element. <b>This tag will usually use the ajax theme.</b>")
-    public void setTheme(String theme) {
-        super.setTheme(theme);
-    }
-
-    @StrutsTagAttribute(description="The URL to call to obtain the content. Note: If used with ajax context, the value must be set as an url tag value.")
-    public void setHref(String href) {
-        this.href = href;
-    }
-
-    @StrutsTagAttribute(description="The text to display to the user if the is an error fetching the content")
-    public void setErrorText(String errorText) {
-        this.errorText = errorText;
-    }
-
-    @StrutsTagAttribute(name="onLoadJS", description="Deprecated. Use 'notifyTopics'. Javascript code execute after reload")
-    public void setAfterLoading(String afterLoading) {
-        this.afterLoading = afterLoading;
-    }
-
-
-    @StrutsTagAttribute(name="preInvokeJS", description="Deprecated. Use 'notifyTopics'. Javascript code execute before reload")
-    public void setBeforeLoading(String beforeLoading) {
-        this.beforeLoading = beforeLoading;
-    }
-
-    @StrutsTagAttribute(description="Javascript code in the fetched content will be executed", type="Boolean", defaultValue="false")
-    public void setExecuteScripts(String executeScripts) {
-        this.executeScripts = executeScripts;
-    }
-
-    @StrutsTagAttribute(description="Text to be shown while content is being fetched", defaultValue="Loading...")
-    public void setLoadingText(String loadingText) {
-        this.loadingText = loadingText;
-    }
-
-    @StrutsTagAttribute(description="Javascript function name that will make the request")
-    public void setHandler(String handler) {
-        this.handler = handler;
-    }
-
-    @StrutsTagAttribute(description="Function name used to filter the fields of the form.")
-    public void setFormFilter(String formFilter) {
-        this.formFilter = formFilter;
-    }
-
-    @StrutsTagAttribute(description="Form id whose fields will be serialized and passed as parameters")
-    public void setFormId(String formId) {
-        this.formId = formId;
-    }
-
-    @StrutsTagAttribute(description="Supply an image src for <i>image</i> type submit button. Will have no effect for types <i>input</i> and <i>button</i>.")
-    public void setSrc(String src) {
-        this.src = src;
-    }
-
-    @StrutsTagAttribute(description="Comma delimited list of ids of the elements whose content will be updated")
-    public void setTargets(String targets) {
-        this.targets = targets;
-    }
-
-
-    @StrutsTagAttribute(description="Topics that will published when the remote call completes")
-    public void setNotifyTopics(String notifyTopics) {
-        this.notifyTopics = notifyTopics;
-    }
-
-
-    @StrutsTagAttribute(description="Set whether errors will be shown or not", type="Boolean", defaultValue="true")
-    public void setShowErrorTransportText(String showErrorTransportText) {
-        this.showErrorTransportText = showErrorTransportText;
-    }
-
-
-    @StrutsTagAttribute(description="Set indicator")
-    public void setIndicator(String indicator) {
-        this.indicator = indicator;
-    }
-
-    @StrutsTagAttribute(description="Show loading text on targets", type="Boolean", defaultValue="true")
-    public void setShowLoadingText(String showLoadingText) {
-        this.showLoadingText = showLoadingText;
     }
 }

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/DefaultTagLibrary.java Fri Mar  2 21:33:30 2007
@@ -31,7 +31,6 @@
 import org.apache.struts2.views.velocity.components.ActionErrorDirective;
 import org.apache.struts2.views.velocity.components.ActionMessageDirective;
 import org.apache.struts2.views.velocity.components.AnchorDirective;
-import org.apache.struts2.views.velocity.components.AutocompleterDirective;
 import org.apache.struts2.views.velocity.components.BeanDirective;
 import org.apache.struts2.views.velocity.components.CheckBoxDirective;
 import org.apache.struts2.views.velocity.components.CheckBoxListDirective;
@@ -40,7 +39,6 @@
 import org.apache.struts2.views.velocity.components.DateDirective;
 import org.apache.struts2.views.velocity.components.DivDirective;
 import org.apache.struts2.views.velocity.components.DoubleSelectDirective;
-import org.apache.struts2.views.velocity.components.DateTimePickerDirective;
 import org.apache.struts2.views.velocity.components.FieldErrorDirective;
 import org.apache.struts2.views.velocity.components.FileDirective;
 import org.apache.struts2.views.velocity.components.FormDirective;
@@ -59,13 +57,10 @@
 import org.apache.struts2.views.velocity.components.SelectDirective;
 import org.apache.struts2.views.velocity.components.SetDirective;
 import org.apache.struts2.views.velocity.components.SubmitDirective;
-import org.apache.struts2.views.velocity.components.TabbedPanelDirective;
 import org.apache.struts2.views.velocity.components.TextAreaDirective;
 import org.apache.struts2.views.velocity.components.TextDirective;
 import org.apache.struts2.views.velocity.components.TextFieldDirective;
 import org.apache.struts2.views.velocity.components.TokenDirective;
-import org.apache.struts2.views.velocity.components.TreeDirective;
-import org.apache.struts2.views.velocity.components.TreeNodeDirective;
 import org.apache.struts2.views.velocity.components.URLDirective;
 import org.apache.struts2.views.velocity.components.UpDownSelectDirective;
 import org.apache.struts2.views.velocity.components.WebTableDirective;
@@ -92,9 +87,7 @@
             ComboBoxDirective.class,
             ComponentDirective.class,
             DateDirective.class,
-            DateTimePickerDirective.class,
             DivDirective.class,
-            AutocompleterDirective.class,
             DoubleSelectDirective.class,
             FileDirective.class,
             FormDirective.class,
@@ -113,13 +106,10 @@
             SetDirective.class,
             SubmitDirective.class,
             ResetDirective.class,
-            TabbedPanelDirective.class,
             TextAreaDirective.class,
             TextDirective.class,
             TextFieldDirective.class,
             TokenDirective.class,
-            TreeDirective.class,
-            TreeNodeDirective.class,
             URLDirective.class,
             WebTableDirective.class,
             ActionErrorDirective.class,

Added: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java?view=auto&rev=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java (added)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/annotations/StrutsTagSkipInheritance.java Fri Mar  2 21:33:30 2007
@@ -0,0 +1,36 @@
+/*
+ * $Id: StrutsTag.java 502294 2007-02-01 17:28:00Z niallp $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.struts2.views.annotations;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Marks a class as the top class in the class hierarchy scanned for tag annotations 
+ */
+@Target(ElementType.TYPE)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface StrutsTagSkipInheritance {
+
+}

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java Fri Mar  2 21:33:30 2007
@@ -42,7 +42,6 @@
     protected ComboBoxModel comboBox;
     protected ComponentModel component;
     protected DateModel date;
-    protected DateTimePickerModel dateTimePicker;
     protected DivModel div;
     protected DoubleSelectModel doubleselect;
     protected FileModel file;
@@ -61,7 +60,6 @@
     protected SetModel set;
     protected SubmitModel submit;
     protected ResetModel reset;
-    protected TabbedPanelModel tabbedPanel;
     protected TextAreaModel textarea;
     protected TextModel text;
     protected TextFieldModel textfield;
@@ -74,14 +72,11 @@
     protected ActionMessageModel actionmessage;
     protected FieldErrorModel fielderror;
     protected OptionTransferSelectModel optiontransferselect;
-    protected TreeModel treeModel;
-    protected TreeNodeModel treenodeModel;
     protected UpDownSelectModel updownselect;
     protected OptGroupModel optGroupModel;
     protected IfModel ifModel;
     protected ElseModel elseModel;
     protected ElseIfModel elseIfModel;
-    protected AutocompleterModel autocompleterModel;
     protected InputTransferSelectModel inputtransferselect;
 
 
@@ -115,14 +110,6 @@
         return comboBox;
     }
 
-    public AutocompleterModel getAutocompleterModel() {
-        if (autocompleterModel == null) {
-            autocompleterModel = new AutocompleterModel(stack, req, res);
-        }
-
-        return autocompleterModel;
-    }
-
     public ComponentModel getComponent() {
         if (component == null) {
             component = new ComponentModel(stack, req, res);
@@ -242,14 +229,6 @@
         return date;
     }
 
-    public DateTimePickerModel getDateTimePicker() {
-        if (dateTimePicker == null) {
-            dateTimePicker = new DateTimePickerModel(stack, req, res);
-        }
-
-        return dateTimePicker;
-    }
-
     public TokenModel getToken() {
         if (token == null) {
             token = new TokenModel(stack, req, res);
@@ -330,14 +309,6 @@
         return text;
     }
 
-    public TabbedPanelModel getTabbedPanel() {
-        if (tabbedPanel == null) {
-            tabbedPanel = new TabbedPanelModel(stack, req, res);
-        }
-
-        return tabbedPanel;
-    }
-
     public BeanModel getBean() {
         if (bean == null) {
             bean = new BeanModel(stack, req, res);
@@ -415,20 +386,6 @@
             optiontransferselect = new OptionTransferSelectModel(stack, req, res);
         }
         return optiontransferselect;
-    }
-
-    public TreeModel getTree() {
-        if (treeModel == null) {
-            treeModel = new TreeModel(stack,req, res);
-        }
-        return treeModel;
-    }
-
-    public TreeNodeModel getTreenode() {
-        if (treenodeModel == null) {
-            treenodeModel = new TreeNodeModel(stack, req, res);
-        }
-        return treenodeModel;
     }
 
     public UpDownSelectModel getUpdownselect() {

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AnchorTag.java Fri Mar  2 21:33:30 2007
@@ -25,37 +25,32 @@
 
 import org.apache.struts2.components.Anchor;
 import org.apache.struts2.components.Component;
+import org.apache.struts2.components.UIBean;
 
 import com.opensymphony.xwork2.util.ValueStack;
 
 /**
  * @see Anchor
  */
-public class AnchorTag extends AbstractRemoteCallUITag {
+public class AnchorTag extends AbstractClosingTag {
 
-	private static final long serialVersionUID = -1034616578492431113L;
-
-    protected String targets;
-    protected String preInvokeJS;
+    private static final long serialVersionUID = -1034616578492431113L;
 
+    protected String href;
+    
     public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
         return new Anchor(stack, req, res);
     }
-
+    
     protected void populateParams() {
         super.populateParams();
 
-        Anchor link = (Anchor) component;
-        link.setTargets(targets);
+        Anchor anchor = (Anchor) component;
+        anchor.setHref(href);
     }
-
-    public void setTargets(String targets) {
-        this.targets = targets;
-    }
-
-    @Deprecated()
-    public void setPreInvokeJS(String preInvokeJS) {
-        this.beforeLoading = preInvokeJS;
+    
+    public void setHref(String href) {
+        this.href = href;
     }
 }
 

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DivTag.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DivTag.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DivTag.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/DivTag.java Fri Mar  2 21:33:30 2007
@@ -28,60 +28,11 @@
 
 import com.opensymphony.xwork2.util.ValueStack;
 
-public class DivTag extends AbstractRemoteCallUITag {
+public class DivTag extends AbstractClosingTag {
 
     private static final long serialVersionUID = 5309231035916461758L;
-
-    protected String updateFreq;
-    protected String autoStart;
-    protected String delay;
-    protected String startTimerListenTopics;
-    protected String stopTimerListenTopics;
-    protected String refreshOnShow;
-    protected String separateScripts;
     
     public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
         return new Div(stack, req, res);
-    }
-
-    protected void populateParams() {
-        super.populateParams();
-
-        Div div = (Div) component;
-        div.setUpdateFreq(updateFreq);
-        div.setAutoStart(autoStart);
-        div.setDelay(delay);
-        div.setStartTimerListenTopics(startTimerListenTopics);
-        div.setStopTimerListenTopics(stopTimerListenTopics);
-        div.setRefreshOnShow(refreshOnShow);
-        div.setSeparateScripts(separateScripts);
-    }
-
-    public void setAutoStart(String autoStart) {
-        this.autoStart = autoStart;
-    }
-
-    public void setDelay(String delay) {
-        this.delay = delay;
-    }
-
-    public void setUpdateFreq(String updateInterval) {
-        this.updateFreq = updateInterval;
-    }
-
-    public void setStartTimerListenTopics(String startTimerListenTopic) {
-        this.startTimerListenTopics = startTimerListenTopic;
-    }
-
-    public void setStopTimerListenTopics(String stopTimerListenTopic) {
-        this.stopTimerListenTopics = stopTimerListenTopic;
-    }
-
-    public void setRefreshOnShow(String refreshOnShow) {
-        this.refreshOnShow = refreshOnShow;
-    }
-
-    public void setSeparateScripts(String separateScripts) {
-        this.separateScripts = separateScripts;
     }
 }

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/SubmitTag.java Fri Mar  2 21:33:30 2007
@@ -39,27 +39,7 @@
     protected String method;
     protected String align;
     protected String type;
-    protected String href;
-    protected String listenTopics;
-    protected String notifyTopics;
-    protected String loadingText;
-    protected String errorText;
-    protected String executeScripts;
-    protected String handler;
-    protected String formId;
-    protected String formFilter;
     protected String src;
-    protected String showErrorTransportText;
-    protected String indicator;
-    protected String showLoadingText;
-
-    //these two are called "preInvokeJS" and "onLoadJS" on the tld
-    //Names changed here to keep some consistency
-    protected String beforeLoading;
-    protected String afterLoading;
-
-    //this one is called "resultDivId" on the tld
-    protected String targets;
 
     public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
         return new Submit(stack, req, res);
@@ -73,22 +53,7 @@
         submit.setMethod(method);
         submit.setAlign(align);
         submit.setType(type);
-        submit.setHref(href);
-        submit.setListenTopics(listenTopics);
-        submit.setLoadingText(loadingText);
-        submit.setErrorText(errorText);
-        submit.setAfterLoading(afterLoading);
-        submit.setBeforeLoading(beforeLoading);
-        submit.setExecuteScripts(executeScripts);
-        submit.setHandler(handler);
-        submit.setFormFilter(formFilter);
-        submit.setFormId(formId);
         submit.setSrc(src);
-        submit.setTargets(targets);
-        submit.setNotifyTopics(notifyTopics);
-        submit.setShowErrorTransportText(showErrorTransportText);
-        submit.setIndicator(indicator);
-        submit.setShowLoadingText(showLoadingText);
     }
 
     public void setAction(String action) {
@@ -111,74 +76,7 @@
         this.type = type;
     }
 
-    public void setHref(String href) {
-        this.href = href;
-    }
-
-    public void setErrorText(String errorText) {
-        this.errorText = errorText;
-    }
-
-    public void setLoadingText(String loadingText) {
-        this.loadingText = loadingText;
-    }
-
-    public void setListenTopics(String listenTopics) {
-        this.listenTopics = listenTopics;
-    }
-
-    public void setExecuteScripts(String executeScripts) {
-        this.executeScripts = executeScripts;
-    }
-
-    public void setHandler(String handler) {
-        this.handler = handler;
-    }
-
-    public void setFormFilter(String formFilter) {
-        this.formFilter = formFilter;
-    }
-
-    public void setFormId(String formId) {
-        this.formId = formId;
-    }
-
     public void setSrc(String src) {
         this.src = src;
-    }
-
-    public void setTargets(String targets) {
-        this.targets = targets;
-    }
-
-    @Deprecated
-    public void setResultDivId(String id) {
-        this.targets = id;
-    }
-
-    @Deprecated
-    public void setOnLoadJS(String postJS) {
-        this.afterLoading = postJS;
-    }
-
-    @Deprecated
-    public void setPreInvokeJS(String preJS) {
-        this.beforeLoading = preJS;
-    }
-
-    public void setNotifyTopics(String notifyTopics) {
-        this.notifyTopics = notifyTopics;
-    }
-
-    public void setShowErrorTransportText(String showErrorTransportText) {
-        this.showErrorTransportText = showErrorTransportText;
-    }
-
-    public void setIndicator(String indicator) {
-        this.indicator = indicator;
-    }
-
-    public void setShowLoadingText(String showLoadingText) {
-        this.showLoadingText = showLoadingText;
     }
 }

Modified: struts/struts2/trunk/core/src/site/resources/tags/a.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/a.html?view=diff&rev=514082&r1=514081&r2=514082
==============================================================================
--- struts/struts2/trunk/core/src/site/resources/tags/a.html (original)
+++ struts/struts2/trunk/core/src/site/resources/tags/a.html Fri Mar  2 21:33:30 2007
@@ -60,52 +60,12 @@
 					<td align="left" valign="top">Set the html disabled attribute on rendered html element</td>
 				</tr>
 				<tr>
-					<td align="left" valign="top">errorText</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">The text to display to the user if the is an error fetching the content</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">executeScripts</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">Boolean</td>
-					<td align="left" valign="top">Javascript code in the fetched content will be executed</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">formFilter</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Function name used to filter the fields of the form.</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">formId</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Form id whose fields will be serialized and passed as parameters</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">handler</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Javascript function name that will make the request</td>
-				</tr>
-				<tr>
 					<td align="left" valign="top">href</td>
 					<td align="left" valign="top">false</td>
 					<td align="left" valign="top"></td>
 					<td align="left" valign="top">true</td>
 					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">The URL to call to obtain the content. Note: If used with ajax context, the value must be set as an url tag value.</td>
+					<td align="left" valign="top">The URL.</td>
 				</tr>
 				<tr>
 					<td align="left" valign="top">id</td>
@@ -116,14 +76,6 @@
 					<td align="left" valign="top">id for referencing element. For UI and form tags it will be used as HTML id attribute</td>
 				</tr>
 				<tr>
-					<td align="left" valign="top">indicator</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Id of element that will be shown while making request</td>
-				</tr>
-				<tr>
 					<td align="left" valign="top">key</td>
 					<td align="left" valign="top">false</td>
 					<td align="left" valign="top"></td>
@@ -148,22 +100,6 @@
 					<td align="left" valign="top">Define label position of form element (top/left)</td>
 				</tr>
 				<tr>
-					<td align="left" valign="top">listenTopics</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Topic that will trigger the remote call</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">loadingText</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top">Loading...</td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Text to be shown while content is being fetched</td>
-				</tr>
-				<tr>
 					<td align="left" valign="top">name</td>
 					<td align="left" valign="top">false</td>
 					<td align="left" valign="top"></td>
@@ -172,22 +108,6 @@
 					<td align="left" valign="top">The name to set for element</td>
 				</tr>
 				<tr>
-					<td align="left" valign="top">notifyTopics</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Topics that will published when the remote call completes</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">onLoadJS</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Deprecated. Use 'notifyTopics'. Javascript code execute after reload</td>
-				</tr>
-				<tr>
 					<td align="left" valign="top">onblur</td>
 					<td align="left" valign="top">false</td>
 					<td align="left" valign="top"></td>
@@ -308,14 +228,6 @@
 					<td align="left" valign="top">Set template to use for opening the rendered html.</td>
 				</tr>
 				<tr>
-					<td align="left" valign="top">preInvokeJS</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Deprecated. Use 'notifyTopics'. Javascript code execute before reload</td>
-				</tr>
-				<tr>
 					<td align="left" valign="top">required</td>
 					<td align="left" valign="top">false</td>
 					<td align="left" valign="top">false</td>
@@ -332,36 +244,12 @@
 					<td align="left" valign="top">Define required position of required form element (left|right)</td>
 				</tr>
 				<tr>
-					<td align="left" valign="top">showErrorTransportText</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">Boolean</td>
-					<td align="left" valign="top">Set whether errors will be shown or not</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">showLoadingText</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">Boolean</td>
-					<td align="left" valign="top">Show loading text on targets</td>
-				</tr>
-				<tr>
 					<td align="left" valign="top">tabindex</td>
 					<td align="left" valign="top">false</td>
 					<td align="left" valign="top"></td>
 					<td align="left" valign="top">true</td>
 					<td align="left" valign="top">String</td>
 					<td align="left" valign="top">Set the html tabindex attribute on rendered html element</td>
-				</tr>
-				<tr>
-					<td align="left" valign="top">targets</td>
-					<td align="left" valign="top">false</td>
-					<td align="left" valign="top"></td>
-					<td align="left" valign="top">true</td>
-					<td align="left" valign="top">String</td>
-					<td align="left" valign="top">Comma delimited list of ids of the elements whose content will be updated</td>
 				</tr>
 				<tr>
 					<td align="left" valign="top">template</td>

Added: struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html?view=auto&rev=514082
==============================================================================
--- struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html (added)
+++ struts/struts2/trunk/core/src/site/resources/tags/ajax/a.html Fri Mar  2 21:33:30 2007
@@ -0,0 +1,154 @@
+<!--
+This file is generated during the build by processing Component class annotations.
+Please do not edit it directly.
+-->
+<html>
+    <head>
+		<title>a</title>
+	</head>
+
+	<body>
+		<h1>Tag Name: a</h1>
+		<h2>Description</h2>
+		<p>
+		<!-- START SNIPPET: tagdescription -->
+		Render a HTML href element that when clicked can optionally call a URL via remote XMLHttpRequest and updates its targets
+		<!-- END SNIPPET: tagdescription -->
+		</p>
+
+		<h2>Attributes</h2>
+		<!-- START SNIPPET: tagattributes -->
+		<table width="100%">
+			<tr>
+				<th align="left" valign="top"><h4>Name</h4></th>
+				<th align="left" valign="top"><h4>Required</h4></th>
+				<th align="left" valign="top"><h4>Default</h4></th>
+				<th align="left" valign="top"><h4>Evaluated</h4></th>
+				<th align="left" valign="top"><h4>Type</h4></th>
+				<th align="left" valign="top"><h4>Description</h4></th>
+			</tr>
+				<tr>
+					<td align="left" valign="top">errorText</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">The text to display to the user if the is an error fetching the content</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">executeScripts</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Javascript code in the fetched content will be executed</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">formFilter</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Function name used to filter the fields of the form.</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">formId</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Form id whose fields will be serialized and passed as parameters</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">handler</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Javascript function name that will make the request</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">href</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">The URL to call to obtain the content. Note: If used with ajax context, the value must be set as an url tag value.</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">indicator</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Id of element that will be shown while making request</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">listenTopics</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Topic that will trigger the remote call</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">loadingText</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">Loading...</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Text to be shown while content is being fetched</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">notifyTopics</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Topics that will published when the remote call completes</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">onLoadJS</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Deprecated. Use 'notifyTopics'. Javascript code execute after reload</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">preInvokeJS</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Deprecated. Use 'notifyTopics'. Javascript code execute before reload</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">showErrorTransportText</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Set whether errors will be shown or not</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">showLoadingText</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Show loading text on targets</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">targets</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Comma delimited list of ids of the elements whose content will be updated</td>
+				</tr>
+		</table>
+		<!-- END SNIPPET: tagattributes -->
+	</body>
+</html>
+

Added: struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html?view=auto&rev=514082
==============================================================================
--- struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html (added)
+++ struts/struts2/trunk/core/src/site/resources/tags/ajax/autocompleter.html Fri Mar  2 21:33:30 2007
@@ -0,0 +1,202 @@
+<!--
+This file is generated during the build by processing Component class annotations.
+Please do not edit it directly.
+-->
+<html>
+    <head>
+		<title>autocompleter</title>
+	</head>
+
+	<body>
+		<h1>Tag Name: autocompleter</h1>
+		<h2>Description</h2>
+		<p>
+		<!-- START SNIPPET: tagdescription -->
+		Renders a combobox with autocomplete and AJAX capabilities
+		<!-- END SNIPPET: tagdescription -->
+		</p>
+
+		<h2>Attributes</h2>
+		<!-- START SNIPPET: tagattributes -->
+		<table width="100%">
+			<tr>
+				<th align="left" valign="top"><h4>Name</h4></th>
+				<th align="left" valign="top"><h4>Required</h4></th>
+				<th align="left" valign="top"><h4>Default</h4></th>
+				<th align="left" valign="top"><h4>Evaluated</h4></th>
+				<th align="left" valign="top"><h4>Type</h4></th>
+				<th align="left" valign="top"><h4>Description</h4></th>
+			</tr>
+				<tr>
+					<td align="left" valign="top">autoComplete</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Whether autocompleter should make suggestion on the textbox</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">dataFieldName</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">Value specified in 'name'</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Name of the field in the returned JSON object that contains the data array</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">delay</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">100</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Delay before making the search</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">disabled</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Enable or disable autocompleter</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">dropdownHeight</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">120</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Dropdown's height in pixels</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">dropdownWidth</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">same as textbox</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Dropdown's width</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">forceValidOption</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Force selection to be one of the options</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">formFilter</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Function name used to filter the fields of the form</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">formId</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Form id whose fields will be serialized and passed as parameters</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">href</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">The URL used to load the options</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">iconPath</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Path to icon used for the dropdown</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">indicator</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Id of element that will be shown while request is made</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">keyName</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Name of the field to which the selected key will be assigned</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">list</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Iteratable source to populate from.</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">listenTopics</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Topic that will trigger a reload</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">loadMinimumCount</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">3</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Minimum number of characters that will force the content to be loaded</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">loadOnTextChange</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Options will be reloaded everytime a character is typed on the textbox</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">notifyTopics</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Topics that will be published when content is reloaded</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">searchType</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">stringstart</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">how the search must be performed, options are: 'startstring', 'startword' and 'substring'</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">showDownArrow</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Show or hide the down arrow button</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">templateCssPath</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Template css path</td>
+				</tr>
+		</table>
+		<!-- END SNIPPET: tagattributes -->
+	</body>
+</html>
+

Added: struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html?view=auto&rev=514082
==============================================================================
--- struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html (added)
+++ struts/struts2/trunk/core/src/site/resources/tags/ajax/datetimepicker.html Fri Mar  2 21:33:30 2007
@@ -0,0 +1,154 @@
+<!--
+This file is generated during the build by processing Component class annotations.
+Please do not edit it directly.
+-->
+<html>
+    <head>
+		<title>datetimepicker</title>
+	</head>
+
+	<body>
+		<h1>Tag Name: datetimepicker</h1>
+		<h2>Description</h2>
+		<p>
+		<!-- START SNIPPET: tagdescription -->
+		Render datetimepicker
+		<!-- END SNIPPET: tagdescription -->
+		</p>
+
+		<h2>Attributes</h2>
+		<!-- START SNIPPET: tagattributes -->
+		<table width="100%">
+			<tr>
+				<th align="left" valign="top"><h4>Name</h4></th>
+				<th align="left" valign="top"><h4>Required</h4></th>
+				<th align="left" valign="top"><h4>Default</h4></th>
+				<th align="left" valign="top"><h4>Evaluated</h4></th>
+				<th align="left" valign="top"><h4>Type</h4></th>
+				<th align="left" valign="top"><h4>Description</h4></th>
+			</tr>
+				<tr>
+					<td align="left" valign="top">adjustWeeks</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">If true, weekly size of calendar changes to acomodate the month if false, 42 day format is used</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">dayWidth</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">narrow</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">How to render the names of the days in the header(narrow, abbr or wide)</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">displayFormat</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">A pattern used for the visual display of the formatted date, e.g. dd/MM/yyyy</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">displayWeeks</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">6</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Total weeks to display</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">endDate</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">2941-10-12</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Date</td>
+					<td align="left" valign="top">Last available date in the calendar set</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">formatLength</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">short</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Type of formatting used for visual display. Possible values are long, short, medium or full</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">iconPath</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Path to icon used for the dropdown</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">language</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">brower's specified preferred language</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Language to display this widget in</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">startDate</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">1492-10-12</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Date</td>
+					<td align="left" valign="top">First available date in the calendar set</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">staticDisplay</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Boolean</td>
+					<td align="left" valign="top">Disable all incremental controls, must pick a date in the current display</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">templateCssPath</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top"></td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Template css path</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">toggleDuration</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">100</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Duration of toggle in milliseconds</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">toggleType</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">plain</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">oggle type of the dropdown. Possible values are plain,wipe,explode,fade</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">type</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">date</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">String</td>
+					<td align="left" valign="top">Defines the type of the picker on the dropdown. Possible values are 'date' for a DateTimePicker, and 'time' for a timePicker</td>
+				</tr>
+				<tr>
+					<td align="left" valign="top">weekStartsOn</td>
+					<td align="left" valign="top">false</td>
+					<td align="left" valign="top">0</td>
+					<td align="left" valign="top">true</td>
+					<td align="left" valign="top">Integer</td>
+					<td align="left" valign="top">Adjusts the first day of the week 0==Sunday..6==Saturday</td>
+				</tr>
+		</table>
+		<!-- END SNIPPET: tagattributes -->
+	</body>
+</html>
+