You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by ma...@apache.org on 2009/12/27 19:01:09 UTC

svn commit: r894087 [42/46] - in /struts/xwork/trunk: ./ assembly/ assembly/src/ assembly/src/main/ assembly/src/main/assembly/ assembly/src/main/resources/ core/ core/src/ core/src/main/ core/src/main/java/ core/src/main/java/com/ core/src/main/java/c...

Added: struts/xwork/trunk/docs/wikidocs/DoubleRangeFieldValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/DoubleRangeFieldValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/DoubleRangeFieldValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/DoubleRangeFieldValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,100 @@
+<html>
+    <head>
+        <title>XWork - 
+        DoubleRangeFieldValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a double field has a value within a specified range.
+If neither min nor max is set, nothing will be done.</p>
+
+<h2><a name="DoubleRangeFieldValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="DoubleRangeFieldValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+<tr>
+<td class='confluenceTd'> minInclusive </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Double property.  The inclusive minimum the number must be. </td>
+</tr>
+<tr>
+<td class='confluenceTd'> maxInclusive </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Double property.  The inclusive maximum number can be. </td>
+</tr>
+<tr>
+<td class='confluenceTd'> minExclusive </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Double property.  The exclusive minimum the number must be. </td>
+</tr>
+<tr>
+<td class='confluenceTd'> maxExclusive </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Double property.  The exclusive maximum number can be. </td>
+</tr>
+</table></p>
+
+<p><p>If neither <em>min</em> nor <em>max</em> is set, nothing will be done.</p></p>
+
+<p><p>The values for min and max must be inserted as String values so that "0" can be handled as a possible value.</p></p>
+
+<h2><a name="DoubleRangeFieldValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@DoubleRangeFieldValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>, minInclusive = <span class="code-quote">"0.123"</span>, maxInclusive = <span class="code-quote">"99.987"</span>)</pre>
+</div></div>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/DoubleRangeFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/DoubleRangeFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Element Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Element%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Element Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Element Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,56 @@
+<html>
+    <head>
+        <title>XWork - 
+        Element Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p><p/>Sets the Element for type conversion.</p>
+
+<h2><a name="ElementAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The Element annotation must be applied at field or method level.</p>
+
+<h2><a name="ElementAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table>
+<thead>
+<tr>
+<th>Parameter</th>
+<th>Required</th>
+<th>Default</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>value</td>
+<td>no</td>
+<td>java.lang.Object.class</td>
+<td>The element property value.</td>
+</tr>
+</tbody>
+</table></p>
+
+<h2><a name="ElementAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java"><span class="code-comment">// The key property <span class="code-keyword">for</span> User objects within the users collection is the &lt;code&gt;userName&lt;/code&gt; attribute.
+</span>@Element( value = com.acme.User )
+<span class="code-keyword">private</span> Map&lt;<span class="code-object">Long</span>, User&gt; userMap;
+
+@Element( value = com.acme.User )
+<span class="code-keyword">public</span> List&lt;User&gt; userList;</pre>
+</div></div>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Element Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Element Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/EmailValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/EmailValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/EmailValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/EmailValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,72 @@
+<html>
+    <head>
+        <title>XWork - 
+        EmailValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a field is a valid e-mail address if it contains a non-empty String.</p>
+
+<h2><a name="EmailValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="EmailValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+</table></p>
+
+<h2><a name="EmailValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@EmailValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/EmailValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/EmailValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/ExpressionValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/ExpressionValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/ExpressionValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/ExpressionValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,68 @@
+<html>
+    <head>
+        <title>XWork - 
+        ExpressionValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <h1><a name="ExpressionValidatorAnnotation-ExpressionValidatorAnnotation"></a>ExpressionValidator Annotation</h1>
+
+<p>This non-field level validator validates a supplied regular expression.</p>
+
+<h2><a name="ExpressionValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="ExpressionValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'> expression </td>
+<td class='confluenceTd'> yes </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> An OGNL expression that returns a boolean value.  </td>
+</tr>
+</table></p>
+
+<h2><a name="ExpressionValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@ExpressionValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>, expression = <span class="code-quote">"an OGNL expression"</span> )</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/ExpressionValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/ExpressionValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/FieldExpressionValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/FieldExpressionValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/FieldExpressionValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/FieldExpressionValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,74 @@
+<html>
+    <head>
+        <title>XWork - 
+        FieldExpressionValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator uses an OGNL expression to perform its validator.
+The error message will be added to the field if the expression returns
+false when it is evaluated against the value stack.</p>
+
+<h2><a name="FieldExpressionValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="FieldExpressionValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'> expression </td>
+<td class='confluenceTd'> yes </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> An OGNL expression that returns a boolean value.  </td>
+</tr>
+</table></p>
+
+<h2><a name="FieldExpressionValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@FieldExpressionValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>, expression = <span class="code-quote">"an OGNL expression"</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/FieldExpressionValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/FieldExpressionValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Include configuration.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Include%20configuration.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Include configuration.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Include configuration.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,34 @@
+<html>
+    <head>
+        <title>XWork - 
+        Include configuration
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <h1><a name="Includeconfiguration-Description"></a>Description</h1>
+
+<p>To make it easy to manage large scale development (lots of actions +  configuration), XWork allows you to include other configuration files from xwork.xml :</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;xwork&gt;</span>
+    <span class="code-tag">&lt;include file=<span class="code-quote">"xwork-default.xml"</span>/&gt;</span>
+    <span class="code-tag">&lt;include file=<span class="code-quote">"xwork-extension.xml"</span>/&gt;</span>
+    <span class="code-tag">&lt;include file=<span class="code-quote">"xwork-mail.xml"</span>/&gt;</span>
+    <span class="code-tag">&lt;include file=<span class="code-quote">"xwork-xmlrpc.xml"</span>/&gt;</span>
+    ....
+<span class="code-tag">&lt;/xwork&gt;</span></pre>
+</div></div>
+
+<p>The included files must be the same format as xwork.xml (with the doctype and everything) and be placed on classpath.</p>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Include configuration.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Include configuration.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/IntRangeFieldValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/IntRangeFieldValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/IntRangeFieldValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/IntRangeFieldValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,89 @@
+<html>
+    <head>
+        <title>XWork - 
+        IntRangeFieldValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a numeric field has a value within a specified range.
+If neither min nor max is set, nothing will be done.</p>
+
+<h2><a name="IntRangeFieldValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="IntRangeFieldValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+<tr>
+<td class='confluenceTd'> min </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Integer property.  The minimum the number must be. </td>
+</tr>
+<tr>
+<td class='confluenceTd'> max </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Integer property.  The maximum number can be. </td>
+</tr>
+</table></p>
+
+<p><p>If neither <em>min</em> nor <em>max</em> is set, nothing will be done.</p></p>
+
+<p><p>The values for min and max must be inserted as String values so that "0" can be handled as a possible value.</p></p>
+
+<h2><a name="IntRangeFieldValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@IntRangeFieldValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>, min = <span class="code-quote">"0"</span>, max = <span class="code-quote">"42"</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/IntRangeFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/IntRangeFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Interceptor Configuration.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Interceptor%20Configuration.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Interceptor Configuration.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Interceptor Configuration.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,54 @@
+<html>
+    <head>
+        <title>XWork - 
+        Interceptor Configuration
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <h1><a name="InterceptorConfiguration-Description"></a>Description</h1>
+
+<p>Interceptors allow you to define code to be executed before and/or after the execution of an action. Interceptors can be a powerful tool when writing web applications. Some of the most common implementations of an Interceptor might be: </p>
+<ul>
+	<li>Security Checking (ensuring the user is logged in)</li>
+	<li>Trace Logging (logging every action)</li>
+	<li>Bottleneck Checking (start a timer before and after every action, to check bottlenecks in your application)</li>
+</ul>
+
+
+<p>You can also chain Interceptors together to create an interceptor <b>stack</b>. If you wanted to do a login check, security check, and logging all before an Action call, this could easily be done with an interceptor package.</p>
+
+<p>Intercepters must first be defined (to give name them) and can be chained together as a stack:</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;interceptors&gt;</span>
+  <span class="code-tag">&lt;interceptor name=<span class="code-quote">"security"</span> class=<span class="code-quote">"com.mycompany.security.SecurityInterceptor"</span>/&gt;</span>
+  <span class="code-tag">&lt;interceptor-stack name=<span class="code-quote">"defaultComponentStack"</span>&gt;</span>
+    <span class="code-tag">&lt;interceptor-ref name=<span class="code-quote">"component"</span>/&gt;</span>
+    <span class="code-tag">&lt;interceptor-ref name=<span class="code-quote">"defaultStack"</span>/&gt;</span>
+  <span class="code-tag">&lt;/interceptor-stack&gt;</span>
+<span class="code-tag">&lt;/interceptors&gt;</span></pre>
+</div></div>
+
+<p>To use them in your actions:</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;action name=<span class="code-quote">"VelocityCounter"</span> class=<span class="code-quote">"com.opensymphony.xwork.example.counter.SimpleCounter"</span>&gt;</span>
+   <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span>&gt;</span>...<span class="code-tag">&lt;/result&gt;</span>
+   <span class="code-tag">&lt;interceptor-ref name=<span class="code-quote">"defaultComponentStack"</span>/&gt;</span>
+<span class="code-tag">&lt;/action&gt;</span></pre>
+</div></div>
+
+<p>NOTE: Reference name can be either the name of the interceptor or the name of a stack</p>
+
+<p>For more details, see Interceptors reference.</p>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Interceptor Configuration.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Interceptor Configuration.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Key Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Key%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Key Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Key Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,53 @@
+<html>
+    <head>
+        <title>XWork - 
+         Annotation
+        </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p><p/>Sets the Key for type conversion.</p>
+
+<h2><a name="KeyAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The Key annotation must be applied at field or method level.</p>
+
+<h2><a name="KeyAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table>
+<thead>
+<tr>
+<th>Parameter</th>
+<th>Required</th>
+<th>Default</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>value</td>
+<td>no</td>
+<td>java.lang.Object.class</td>
+<td>The key property value.</td>
+</tr>
+</tbody>
+</table></p>
+
+<h2><a name="KeyAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java"><span class="code-comment">// The key property <span class="code-keyword">for</span> User objects within the users collection is the &lt;code&gt;userName&lt;/code&gt; attribute.
+</span>@Key( value = java.lang.<span class="code-object">Long</span>.class )
+<span class="code-keyword">private</span> Map&lt;<span class="code-object">Long</span>, User&gt; userMap;</pre>
+</div></div>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Key Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Key Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/KeyProperty Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/KeyProperty%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/KeyProperty Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/KeyProperty Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,55 @@
+<html>
+    <head>
+        <title>XWork - 
+        KeyProperty Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p><p/>Sets the KeyProperty for type conversion.</p>
+
+<h2><a name="KeyPropertyAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The KeyProperty annotation must be applied at field or method level.
+<p/>This annotation should be used with Generic types, if the key property of the key element needs to be specified.</p>
+
+<h2><a name="KeyPropertyAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table>
+<thead>
+<tr>
+<th>Parameter</th>
+<th>Required</th>
+<th>Default</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>value</td>
+<td>no</td>
+<td>id</td>
+<td>The key property value.</td>
+</tr>
+</tbody>
+</table></p>
+
+<h2><a name="KeyPropertyAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java"><span class="code-comment">// The key property <span class="code-keyword">for</span> User objects within the users collection is the &lt;code&gt;userName&lt;/code&gt; attribute.
+</span>@KeyProperty( value = <span class="code-quote">"userName"</span> )
+<span class="code-keyword">protected</span> List&lt;User&gt; users = <span class="code-keyword">null</span>;</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/KeyProperty Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/KeyProperty Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Namespace Configuration.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Namespace%20Configuration.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Namespace Configuration.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Namespace Configuration.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,68 @@
+<html>
+    <head>
+        <title>XWork - 
+        Namespace Configuration
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <h1><a name="NamespaceConfiguration-Namespaces"></a>Namespaces</h1>
+
+<p>The namespace attribute allows you to segregate action configurations into namespaces, so that you may use the same action alias in more than one namespace with different classes, parameters, etc.  </p>
+
+
+<h1><a name="NamespaceConfiguration-DefaultNamespace"></a>Default Namespace</h1>
+<p>The default namespace, which is "" (an empty string) is used as a "catch-all" namespace, so if an action configuration is not found in a specified namespace, the default namespace will also be searched. This allows you to have global action configurations outside of the "extends" hierarchy. It is also intended that the namespace functionality can be used for security, thus allowing the use of J2EE declarative security on paths to be easily implemented and maintained. </p>
+
+
+<h1><a name="NamespaceConfiguration-RootNamesapce"></a>Root Namesapce</h1>
+<p>Root namespace, which is "/" is also allowed in WebWork. It will be the namespace when a request directly under the context path is received. As with other namespace, it will fall back to the default namespace if no such action alias is found in it.</p>
+
+
+<h1><a name="NamespaceConfiguration-Namespaceexample"></a>Namespace example</h1>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;package name=<span class="code-quote">"default"</span>&gt;</span>
+    <span class="code-tag">&lt;action name=<span class="code-quote">"foo"</span> class="mypackage.simpleAction&gt;</span>
+        <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>greeting.jsp<span class="code-tag">&lt;/result&gt;</span>
+    <span class="code-tag">&lt;/action&gt;</span>
+    <span class="code-tag">&lt;action name=<span class="code-quote">"bar"</span> class=<span class="code-quote">"mypackage.simpleAction"</span>&gt;</span> 
+        <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>bar1.jsp<span class="code-tag">&lt;/result&gt;</span> 
+    <span class="code-tag">&lt;/action&gt;</span> 
+<span class="code-tag">&lt;/package&gt;</span>
+
+<span class="code-tag">&lt;package name=<span class="code-quote">"mypackage1"</span> namespace=<span class="code-quote">"/"</span>&gt;</span>
+    <span class="code-tag">&lt;action name=<span class="code-quote">"moo"</span> class=<span class="code-quote">"mypackage.simpleActtion"</span>&gt;</span>
+        <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>moo.jsp<span class="code-tag">&lt;/result&gt;</span>
+    <span class="code-tag">&lt;/action&gt;</span>
+<span class="code-tag">&lt;/package&gt;</span>
+
+<span class="code-tag">&lt;package name=<span class="code-quote">"mypackage2"</span> namespace=<span class="code-quote">"/barspace"</span>&gt;</span> 
+    <span class="code-tag">&lt;action name=<span class="code-quote">"bar"</span> class=<span class="code-quote">"mypackage.simpleAction"</span>&gt;</span> 
+        <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>bar2.jsp<span class="code-tag">&lt;/result&gt;</span> 
+    <span class="code-tag">&lt;/action&gt;</span> 
+<span class="code-tag">&lt;/package&gt;</span></pre>
+</div></div>
+
+
+<h1><a name="NamespaceConfiguration-Explanation"></a>Explanation</h1>
+<p>If a request for /barspace/bar.action is made, '/barspace' namespace is searched and if it is found the bar action is executed, else it will fall back to the default namespace.  In this example bar alias do exists in the '/barspace' namespace, so it will get executed and if success, the request will be forwarded to bar2.jsp.</p>
+
+<p><ins>Note:</ins> If a request is made to /barspace/foo.action, the action foo will be searched for in a namespace of /barspace.  If the action is not found, the action will then be searched for in the default namespace.  Unless specified, the default namespace will be "".  In our example above, their is no action foo in the namespace /barspace, therefore the default will be searched and /foo.action will be executed.</p>
+
+<p>If a request for /moo.action is made, the root namespace ('/') is searched for 'moo' action alias, if it is not found it will fall back to trying to find it in the default namespace. In this example, moo action alias does exists and hence will be executed. Upon sucess, the request will get forwarded to bar2.jsp.</p>
+
+<p><ins>Note:</ins> If a request is made to '/foo.action', '/' namespace will be searched and if it is found it will be execueted, else an attempt to try to find it in the default namespace will occurred. In this example foo action alias does not exist in the '/' namespace, hence it will falled back to the default namespace and execute the foo alias there.</p>
+
+<p><ins>Note:</ins> Namespace is only one level. For example if the url '/barspace/myspace/bar.action' is requested, Webwork will try to search for namespace '/barspace/myspace', which does not exist in this case, and will fall back to the default namespace '' and tried the search for action with 'bar' alias. As a result the bar action in the default will be used.</p>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Namespace Configuration.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Namespace Configuration.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Package Configuration.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Package%20Configuration.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Package Configuration.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Package Configuration.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,54 @@
+<html>
+    <head>
+        <title>XWork - 
+        Package Configuration
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <h1><a name="PackageConfiguration-Overview"></a>Overview</h1>
+
+<p>Packages are a way to group Actions, Results, Result Types, Interceptors and Stacks into a logical unit that shares a common configuration. Packages are similiar to objects in that they can be extended and have individual parts overridden by "sub" packages.</p>
+
+<h1><a name="PackageConfiguration-Packages"></a>Packages</h1>
+
+<p>The package element has one required attribute, "name", which acts as the key for later reference to this package. The "extends" attribute is optional and allows one package to inherit the configuration of one or more previous packages including all interceptor, interceptor-stack, and action configurations. Note that the configuration file is processed sequentially down the document, so the package referenced by an "extends" should be defined above the package which extends it. The "abstract" optional attribute allows you to make a package abstract, which will allow you to extend from it without the action configurations defined in the abstract package actually being available at runtime.</p>
+
+<table class='confluenceTable'><tbody>
+<tr>
+<th class='confluenceTh'> Attribute </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Description </th>
+</tr>
+<tr>
+<td class='confluenceTd'> name </td>
+<td class='confluenceTd'> <b>yes</b> </td>
+<td class='confluenceTd'> key to for other packages to reference </td>
+</tr>
+<tr>
+<td class='confluenceTd'> extends </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'> inherits package behavior of the package it extends </td>
+</tr>
+<tr>
+<td class='confluenceTd'> namespace </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'> see <a href="Namespace Configuration.html" title="Namespace Configuration">Namespace Configuration</a> </td>
+</tr>
+<tr>
+<td class='confluenceTd'> abstract </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'> declares package to be abstract (no action configurations required in package) </td>
+</tr>
+</tbody></table>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Package Configuration.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Package Configuration.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Precise Error Reporting.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Precise%20Error%20Reporting.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Precise Error Reporting.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Precise Error Reporting.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,26 @@
+<html>
+    <head>
+        <title>XWork - 
+        Precise Error Reporting
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>With the multiple levels of configuration, constant overrides, and bean selection, it can be confusing as to how the framework is configured and how it got there.  To assist debugging and provide the ability to continue to provide more line-precise error reporting, the configuration loader remembers the location of not only XML elements, but also Java Properties file properties.</p>
+
+<p>How it works is instead of storing configuration properties in a plain java.util.Properties object, we have a special LocatableProperties class in XWork.  This class leverages the location classes in XWork to store location information for the whole properties file but also individual properties.  We use this to gather configuration properties during configuration loading.  This will allow us to display at any given point the location of each property setting.  This capability should be very useful when trying to determine what XML or Properties file overwrote what and when.</p>
+
+<p>Interestingly, in addition to remembering the URI and line number of Properties properties, the parser we "borrowed" from Commons Configuration even gathers preceding comments, which are also stored in the Location object.  </p>
+
+<p>There are some very interesting possibilities here to increase the transparency of the framework in error and debugging conditions.</p>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Precise Error Reporting.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Precise Error Reporting.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/RegexFieldValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/RegexFieldValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/RegexFieldValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/RegexFieldValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,78 @@
+<html>
+    <head>
+        <title>XWork - 
+        RegexFieldValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>Validates a string field using a regular expression.</p>
+
+<h2><a name="RegexFieldValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="RegexFieldValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>expression</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>The regex to validate the field value against.</td>
+</tr>
+</table></p>
+
+<h2><a name="RegexFieldValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@RegexFieldValidator( key = <span class="code-quote">"regex.field"</span>, expression = <span class="code-quote">"yourregexp"</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/RegexFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/RegexFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Reloading.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Reloading.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Reloading.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Reloading.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,29 @@
+<html>
+    <head>
+        <title>XWork - 
+        Reloading
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>It is possible to configure XWork2 to keeps reloading its configuration files (eg. xwork.xml, *&#45;conversion.xml, *&#45;validation.xml). This is done as follows:</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">FileManager.setReloadingConfigs(<span class="code-keyword">true</span>)</pre>
+</div></div>
+
+<p>Configuration reloading by default is "off".</p>
+
+<table cellpadding='5' width='85%' cellspacing='8px' class='warningMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="./icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p> Obviously, this feature does not come for free. It will cause your application to run <b>considerably slower</b>.</p></td></tr></table>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Reloading.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Reloading.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/RequiredFieldValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/RequiredFieldValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/RequiredFieldValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/RequiredFieldValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,72 @@
+<html>
+    <head>
+        <title>XWork - 
+        RequiredFieldValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a field is non-null.</p>
+
+<h2><a name="RequiredFieldValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="RequiredFieldValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+</table></p>
+
+<h2><a name="RequiredFieldValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@RequiredFieldValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/RequiredFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/RequiredFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/RequiredStringValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/RequiredStringValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/RequiredStringValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/RequiredStringValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,78 @@
+<html>
+    <head>
+        <title>XWork - 
+        RequiredStringValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a String field is not empty (i.e. non-null with a length > 0).</p>
+
+<h2><a name="RequiredStringValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="RequiredStringValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+<tr>
+<td class='confluenceTd'> trim </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'> true </td>
+<td class='confluenceTd'> Boolean property.  Determines whether the String is trimmed before performing the length check.  </td>
+</tr>
+</table></p>
+
+<h2><a name="RequiredStringValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@RequiredStringValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>, trim = <span class="code-keyword">true</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/RequiredStringValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/RequiredStringValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Result Configuration.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Result%20Configuration.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Result Configuration.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Result Configuration.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,88 @@
+<html>
+    <head>
+        <title>XWork - 
+        Result Configuration
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <h1><a name="ResultConfiguration-Description"></a>Description</h1>
+
+<p>Results are string constants that Actions return to indicate the status of an Action execution. A standard set of Results are defined by default: error, input, login, none and success. Developers are, of course, free to create their own Results to indicate more application specific cases.  Results are mapped to defined Result Types using a name-value pair structure.</p>
+<ul>
+	<li>Global results</li>
+	<li>Default results</li>
+</ul>
+
+
+<h1><a name="ResultConfiguration-Resulttags"></a>Result tags</h1>
+
+<p>Result tags tell XWork what to do next after the action has been called. There are a standard set of result codes built-in to XWork, (in the Action interface) they include:</p>
+<div class="code"><div class="codeContent">
+<pre class="code-java"><span class="code-object">String</span> SUCCESS = <span class="code-quote">"success"</span>;
+<span class="code-object">String</span> NONE    = <span class="code-quote">"none"</span>;
+<span class="code-object">String</span> ERROR   = <span class="code-quote">"error"</span>;
+<span class="code-object">String</span> INPUT   = <span class="code-quote">"input"</span>;
+<span class="code-object">String</span> LOGIN   = <span class="code-quote">"login"</span>;</pre>
+</div></div>
+
+<p>You can extend these as you see fit. Most of the time you will have either <b>SUCCESS</b> or <b>ERROR</b>, with <b>SUCCESS</b> moving on to the next page in your application;</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>
+    <span class="code-tag">&lt;param name=<span class="code-quote">"location"</span>&gt;</span>/thank_you.jsp<span class="code-tag">&lt;/param&gt;</span>
+<span class="code-tag">&lt;/result&gt;</span></pre>
+</div></div>
+
+<p>...and <b>ERROR</b> moving on to an error page, or the preceding page;</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;result name=<span class="code-quote">"error"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>
+    <span class="code-tag">&lt;param name=<span class="code-quote">"location"</span>&gt;</span>/error.jsp<span class="code-tag">&lt;/param&gt;</span>
+<span class="code-tag">&lt;/result&gt;</span></pre>
+</div></div>
+
+<p>Results are specified in a xwork xml config file (xwork.xml) nested inside &lt;action&gt;.  If the <tt>location</tt> param is the only param being specified in the result tag, you can simplify it as follows:</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;action name=<span class="code-quote">"bar"</span> class=<span class="code-quote">"myPackage.barAction"</span>&gt;</span>
+  <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>
+    <span class="code-tag">&lt;param name=<span class="code-quote">"location"</span>&gt;</span>foo.jsp<span class="code-tag">&lt;/param&gt;</span>
+  <span class="code-tag">&lt;/result&gt;</span>
+<span class="code-tag">&lt;/action&gt;</span></pre>
+</div></div>
+
+<p>or simplified</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;action name=<span class="code-quote">"bar"</span> class=<span class="code-quote">"myPackage.barAction"</span>&gt;</span>
+  <span class="code-tag">&lt;result name=<span class="code-quote">"success"</span> type=<span class="code-quote">"dispatcher"</span>&gt;</span>foo.jsp<span class="code-tag">&lt;/result&gt;</span>
+<span class="code-tag">&lt;/action&gt;</span></pre>
+</div></div>
+
+<p>or even simplified further</p>
+
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;action name=<span class="code-quote">"bar"</span> class=<span class="code-quote">"myPackage.barAction"</span>&gt;</span>
+   <span class="code-tag">&lt;result&gt;</span>foo.jsp<span class="code-tag">&lt;/result&gt;</span>
+<span class="code-tag">&lt;/action&gt;</span></pre>
+</div></div>
+
+
+<table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="./icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td><b class="strong">Default Action Class</b><br />
+<p>If the class attribute is not specified in the action tag, it will default to XWork's ActionSupport.</p></td></tr></table>
+
+<table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="./icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td><b class="strong">Default Location Parameter</b><br />
+<p>If no param tag eg. &lt;param name="location"&gt; ,,, &lt;/param&gt;  is given as child of the &lt;result ..&gt; tag, XWork will assume the text enclosed within the &lt;result&gt; &lt;/result&gt; tags to be the location.</p></td></tr></table>
+
+<table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="./icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td><b class="strong">Default Result Type</b><br />
+<p>If no type attribute is specified in the &lt;result ...&gt; tag, XWork assume the type to be dispatcher. (Analogus to Servlet's Specs. SerlvetDispatcher's forward).</p></td></tr></table>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Result Configuration.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Result Configuration.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/StringLengthFieldValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/StringLengthFieldValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/StringLengthFieldValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/StringLengthFieldValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,94 @@
+<html>
+    <head>
+        <title>XWork - 
+        StringLengthFieldValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a String field is of the right length. It assumes that the field is a String.
+If neither minLength nor maxLength is set, nothing will be done.</p>
+
+<h2><a name="StringLengthFieldValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="StringLengthFieldValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+<tr>
+<td class='confluenceTd'> trim </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'> true </td>
+<td class='confluenceTd'> Boolean property.  Determines whether the String is trimmed before performing the length check.  </td>
+</tr>
+<tr>
+<td class='confluenceTd'> minLength </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Integer property.  The minimum length the String must be. </td>
+</tr>
+<tr>
+<td class='confluenceTd'> maxLength </td>
+<td class='confluenceTd'> no </td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'> Integer property.  The maximum length the String can be. </td>
+</tr>
+</table></p>
+
+<p><p>If neither <em>minLength</em> nor <em>maxLength</em> is set, nothing will be done.</p></p>
+
+
+<h2><a name="StringLengthFieldValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@StringLengthFieldValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>, trim = <span class="code-keyword">true</span>, minLength = <span class="code-quote">"5"</span>,  maxLength = <span class="code-quote">"12"</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/StringLengthFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/StringLengthFieldValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/StringRegexValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/StringRegexValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/StringRegexValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/StringRegexValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,33 @@
+<html>
+    <head>
+        <title>XWork - 
+        StringRegexValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    An error occurred: http://svn.opensymphony.com/svn/xwork/trunk/src/java/com/opensymphony/xwork2/validator/annotations/StringRegexValidator.java. The system administrator has been notified.
+
+<h2><a name="StringRegexValidatorAnnotation-Usage"></a>Usage</h2>
+
+An error occurred: http://svn.opensymphony.com/svn/xwork/trunk/src/java/com/opensymphony/xwork2/validator/annotations/StringRegexValidator.java. The system administrator has been notified.
+
+<h2><a name="StringRegexValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+An error occurred: http://svn.opensymphony.com/svn/xwork/trunk/src/java/com/opensymphony/xwork2/validator/annotations/StringRegexValidator.java. The system administrator has been notified.
+
+<h2><a name="StringRegexValidatorAnnotation-Examples"></a>Examples</h2>
+
+An error occurred: http://svn.opensymphony.com/svn/xwork/trunk/src/java/com/opensymphony/xwork2/validator/annotations/StringRegexValidator.java. The system administrator has been notified.
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/StringRegexValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/StringRegexValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/TypeConversion Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/TypeConversion%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/TypeConversion Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/TypeConversion Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,122 @@
+<html>
+    <head>
+        <title>XWork - 
+        TypeConversion Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p><p/>This annotation is used for class and application wide conversion rules.
+<p>
+Class wide conversion:<br/>
+The conversion rules will be assembled in a file called <code>XXXAction-conversion.properties</code>
+within the same package as the related action class.
+Set type to: <code>type = ConversionType.CLASS</code>
+</p>
+<p>
+Allication wide conversion:<br/>
+The conversion rules will be assembled within the <code>xwork-conversion.properties</code> file within the classpath root.
+Set type to: <code>type = ConversionType.APPLICATION</code>
+<p/></p>
+
+<h2><a name="TypeConversionAnnotation-Usage"></a>Usage</h2>
+
+<p>The TypeConversion annotation can be applied at property and method level.</p>
+
+<h2><a name="TypeConversionAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table>
+<thead>
+<tr>
+<th>Parameter</th>
+<th>Required</th>
+<th>Default</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>key</td>
+<td>no</td>
+<td>The annotated property/key name</td>
+<td>The optional property name mostly used within TYPE level annotations.</td>
+</tr>
+<tr>
+<td>type</td>
+<td>no</td>
+<td>ConversionType.CLASS</td>
+<td>Enum value of ConversionType.  Determines whether the conversion should be applied at application or class level.</td>
+</tr>
+<tr>
+<td>rule</td>
+<td>no</td>
+<td>ConversionRule.PROPERTY</td>
+<td>Enum value of ConversionRule. The ConversionRule can be a property, a Collection or a Map.</td>
+</tr>
+<tr>
+<td>converter</td>
+<td>either this or value</td>
+<td>&nbsp;</td>
+<td>The class name of the TypeConverter to be used as converter.</td>
+</tr>
+<tr>
+<td>value</td>
+<td>either converter or this</td>
+<td>&nbsp;</td>
+<td>The value to set for ConversionRule.KEY_PROPERTY.</td>
+</tr>
+</tbody>
+</table></p>
+
+
+<h2><a name="TypeConversionAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@Conversion()
+<span class="code-keyword">public</span> class ConversionAction <span class="code-keyword">implements</span> Action {
+
+  <span class="code-keyword">private</span> <span class="code-object">String</span> convertInt;
+
+  <span class="code-keyword">private</span> <span class="code-object">String</span> convertDouble;
+  <span class="code-keyword">private</span> List users = <span class="code-keyword">null</span>;
+
+  <span class="code-keyword">private</span> HashMap keyValues = <span class="code-keyword">null</span>;
+
+  @TypeConversion(type = ConversionType.APPLICATION, converter = <span class="code-quote">"com.opensymphony.xwork2.util.XWorkBasicConverter"</span>)
+  <span class="code-keyword">public</span> void setConvertInt( <span class="code-object">String</span> convertInt ) {
+      <span class="code-keyword">this</span>.convertInt = convertInt;
+  }
+
+  @TypeConversion(converter = <span class="code-quote">"com.opensymphony.xwork2.util.XWorkBasicConverter"</span>)
+  <span class="code-keyword">public</span> void setConvertDouble( <span class="code-object">String</span> convertDouble ) {
+      <span class="code-keyword">this</span>.convertDouble = convertDouble;
+  }
+
+  @TypeConversion(rule = ConversionRule.COLLECTION, converter = <span class="code-quote">"java.util.<span class="code-object">String</span>"</span>)
+  <span class="code-keyword">public</span> void setUsers( List users ) {
+      <span class="code-keyword">this</span>.users = users;
+  }
+
+  @TypeConversion(rule = ConversionRule.MAP, converter = <span class="code-quote">"java.math.BigInteger"</span>)
+  <span class="code-keyword">public</span> void setKeyValues( HashMap keyValues ) {
+      <span class="code-keyword">this</span>.keyValues = keyValues;
+  }
+
+  @TypeConversion(type = ConversionType.APPLICATION, property = <span class="code-quote">"java.util.Date"</span>, converter = <span class="code-quote">"com.opensymphony.xwork2.util.XWorkBasicConverter"</span>)
+  <span class="code-keyword">public</span> <span class="code-object">String</span> execute() <span class="code-keyword">throws</span> Exception {
+      <span class="code-keyword">return</span> SUCCESS;
+  }
+}</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/TypeConversion Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/TypeConversion Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/UrlValidator Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/UrlValidator%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/UrlValidator Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/UrlValidator Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,72 @@
+<html>
+    <head>
+        <title>XWork - 
+        UrlValidator Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>This validator checks that a field is a valid URL.</p>
+
+<h2><a name="UrlValidatorAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The annotation must be applied at method level.</p>
+
+<h2><a name="UrlValidatorAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>message</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>field error message</td>
+</tr>
+<tr>
+<td class='confluenceTd'>key</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>i18n key from language specific properties file.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>fieldName</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'>&nbsp;</td>
+</tr>
+<tr>
+<td class='confluenceTd'>shortCircuit</td>
+<td class='confluenceTd'>no</td>
+<td class='confluenceTd'>false</td>
+<td class='confluenceTd'>If this validator should be used as shortCircuit.</td>
+</tr>
+<tr>
+<td class='confluenceTd'>type</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>ValidatorType.FIELD</td>
+<td class='confluenceTd'>Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.</td>
+</tr>
+</table></p>
+
+<h2><a name="UrlValidatorAnnotation-Examples"></a>Examples</h2>
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@UrlValidator(message = <span class="code-quote">"Default message"</span>, key = <span class="code-quote">"i18n.key"</span>, shortCircuit = <span class="code-keyword">true</span>)</pre>
+</div></div>
+
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/UrlValidator Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/UrlValidator Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: struts/xwork/trunk/docs/wikidocs/Validation Annotation.html
URL: http://svn.apache.org/viewvc/struts/xwork/trunk/docs/wikidocs/Validation%20Annotation.html?rev=894087&view=auto
==============================================================================
--- struts/xwork/trunk/docs/wikidocs/Validation Annotation.html (added)
+++ struts/xwork/trunk/docs/wikidocs/Validation Annotation.html Sun Dec 27 18:00:13 2009
@@ -0,0 +1,109 @@
+<html>
+    <head>
+        <title>XWork - 
+        Validation Annotation
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>If you want to use annotation based validation, you have to annotate the class or interface with Validation Annotation.</p>
+
+<h2><a name="ValidationAnnotation-Usage"></a>Usage</h2>
+
+<p><p/>The Validation annotation must be applied at Type level.</p>
+
+<h2><a name="ValidationAnnotation-Parameters"></a>Parameters</h2>
+
+<p><table class='confluenceTable'>
+<tr>
+<th class='confluenceTh'> Parameter </th>
+<th class='confluenceTh'> Required </th>
+<th class='confluenceTh'> Default </th>
+<th class='confluenceTh'> Notes </th>
+</tr>
+<tr>
+<td class='confluenceTd'>validations</td>
+<td class='confluenceTd'>yes</td>
+<td class='confluenceTd'>&nbsp;</td>
+<td class='confluenceTd'></td>
+</tr>
+</table></p>
+
+<h2><a name="ValidationAnnotation-Examples"></a>Examples</h2>
+
+<p><b>An Annotated Interface</b></p>
+<ul>
+	<li>Mark the interface with @Validation()</li>
+	<li>Apply standard or custom annoations at method level</li>
+</ul>
+
+
+<div class="code"><div class="codeContent">
+<pre class="code-java">@Validation()
+<span class="code-keyword">public</span> <span class="code-keyword">interface</span> AnnotationDataAware {
+
+    void setBarObj(Bar b);
+
+    Bar getBarObj();
+
+    @RequiredFieldValidator(message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> data."</span>)
+    @RequiredStringValidator(message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> data."</span>)
+    void setData(<span class="code-object">String</span> data);
+
+    <span class="code-object">String</span> getData();
+}</pre>
+</div></div>
+<p><b>An Annotated Class</b></p>
+<div class="code"><div class="codeContent">
+<pre class="code-java">@Validation()
+<span class="code-keyword">public</span> class SimpleAnnotationAction <span class="code-keyword">extends</span> ActionSupport {
+
+    @RequiredFieldValidator(type = ValidatorType.FIELD, message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> bar."</span>)
+    @IntRangeFieldValidator(type = ValidatorType.FIELD, min = <span class="code-quote">"6"</span>, max = <span class="code-quote">"10"</span>, message = <span class="code-quote">"bar must be between ${min} and ${max}, current value is ${bar}."</span>)
+    <span class="code-keyword">public</span> void setBar(<span class="code-object">int</span> bar) {
+        <span class="code-keyword">this</span>.bar = bar;
+    }
+
+    <span class="code-keyword">public</span> <span class="code-object">int</span> getBar() {
+        <span class="code-keyword">return</span> bar;
+    }
+
+    @Validations(
+            requiredFields =
+                    {@RequiredFieldValidator(type = ValidatorType.SIMPLE, fieldName = <span class="code-quote">"customfield"</span>, message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> field."</span>)},
+            requiredStrings =
+                    {@RequiredStringValidator(type = ValidatorType.SIMPLE, fieldName = <span class="code-quote">"stringisrequired"</span>, message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> string."</span>)},
+            emails =
+                    { @EmailValidator(type = ValidatorType.SIMPLE, fieldName = <span class="code-quote">"emailaddress"</span>, message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> email."</span>)},
+            urls =
+                    { @UrlValidator(type = ValidatorType.SIMPLE, fieldName = <span class="code-quote">"hreflocation"</span>, message = <span class="code-quote">"You must enter a value <span class="code-keyword">for</span> email."</span>)},
+            stringLengthFields =
+                    {@StringLengthFieldValidator(type = ValidatorType.SIMPLE, trim = <span class="code-keyword">true</span>, minLength=<span class="code-quote">"10"</span> , maxLength = <span class="code-quote">"12"</span>, fieldName = <span class="code-quote">"needstringlength"</span>, message = <span class="code-quote">"You must enter a stringlength."</span>)},
+            intRangeFields =
+                    { @IntRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = <span class="code-quote">"intfield"</span>, min = <span class="code-quote">"6"</span>, max = <span class="code-quote">"10"</span>, message = <span class="code-quote">"bar must be between ${min} and ${max}, current value is ${bar}."</span>)},
+            dateRangeFields =
+                    {@DateRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = <span class="code-quote">"datefield"</span>, min = <span class="code-quote">"-1"</span>, max = <span class="code-quote">"99"</span>, message = <span class="code-quote">"bar must be between ${min} and ${max}, current value is ${bar}."</span>)},
+            expressions = {
+                @ExpressionValidator(expression = <span class="code-quote">"foo &gt; 1"</span>, message = <span class="code-quote">"Foo must be greater than Bar 1. Foo = ${foo}, Bar = ${bar}."</span>),
+                @ExpressionValidator(expression = <span class="code-quote">"foo &gt; 2"</span>, message = <span class="code-quote">"Foo must be greater than Bar 2. Foo = ${foo}, Bar = ${bar}."</span>),
+                @ExpressionValidator(expression = <span class="code-quote">"foo &gt; 3"</span>, message = <span class="code-quote">"Foo must be greater than Bar 3. Foo = ${foo}, Bar = ${bar}."</span>),
+                @ExpressionValidator(expression = <span class="code-quote">"foo &gt; 4"</span>, message = <span class="code-quote">"Foo must be greater than Bar 4. Foo = ${foo}, Bar = ${bar}."</span>),
+                @ExpressionValidator(expression = <span class="code-quote">"foo &gt; 5"</span>, message = <span class="code-quote">"Foo must be greater than Bar 5. Foo = ${foo}, Bar = ${bar}."</span>)
+    }
+    )
+    <span class="code-keyword">public</span> <span class="code-object">String</span> execute() <span class="code-keyword">throws</span> Exception {
+        <span class="code-keyword">return</span> SUCCESS;
+    }
+}</pre>
+</div></div>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

Propchange: struts/xwork/trunk/docs/wikidocs/Validation Annotation.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: struts/xwork/trunk/docs/wikidocs/Validation Annotation.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL