You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2013/03/24 12:37:25 UTC
svn commit: r855775 -
/websites/production/struts/content/development/2.x/docs/
Author: lukaszlenart
Date: Sun Mar 24 11:37:24 2013
New Revision: 855775
Log:
Updates draft docs
Added:
websites/production/struts/content/development/2.x/docs/version-notes-2313.html
Modified:
websites/production/struts/content/development/2.x/docs/building-struts-2-normal-release.html
websites/production/struts/content/development/2.x/docs/conversionerrorfieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/customvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/daterangefieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/debugging-struts.html
websites/production/struts/content/development/2.x/docs/doublerangefieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/email-validator.html
websites/production/struts/content/development/2.x/docs/emailvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/expressionvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/fieldexpressionvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/guides.html
websites/production/struts/content/development/2.x/docs/interceptors.html
websites/production/struts/content/development/2.x/docs/intrangefieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/logging.html
websites/production/struts/content/development/2.x/docs/migration-guide.html
websites/production/struts/content/development/2.x/docs/plugins.html
websites/production/struts/content/development/2.x/docs/regexfieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/requiredfieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/requiredstringvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/stringlength-validator.html
websites/production/struts/content/development/2.x/docs/stringlengthfieldvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/struts-defaultxml.html
websites/production/struts/content/development/2.x/docs/urlvalidator-annotation.html
websites/production/struts/content/development/2.x/docs/version-notes-2311.html
websites/production/struts/content/development/2.x/docs/visitorfieldvalidator-annotation.html
Modified: websites/production/struts/content/development/2.x/docs/building-struts-2-normal-release.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/building-struts-2-normal-release.html (original)
+++ websites/production/struts/content/development/2.x/docs/building-struts-2-normal-release.html Sun Mar 24 11:37:24 2013
@@ -125,11 +125,11 @@ under the License.
<DIV class="wiki-content">
<H1><A name="BuildingStruts2-Normalrelease-Content"></A>Content</H1>
<STYLE type="text/css">/*<![CDATA[*/
-div.rbtoc1362566644196 {margin-left: 0px;padding: 0px;}
-div.rbtoc1362566644196 ul {list-style: none;margin-left: 0px;}
-div.rbtoc1362566644196 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1363294584200 {margin-left: 0px;padding: 0px;}
+div.rbtoc1363294584200 ul {list-style: none;margin-left: 0px;}
+div.rbtoc1363294584200 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</STYLE><DIV class="rbtoc1362566644196">
+/*]]>*/</STYLE><DIV class="rbtoc1363294584200">
<UL>
<LI><SPAN class="TOCOutline">1</SPAN> <A href="#BuildingStruts2-Normalrelease-BuildingSteps%2528Struts%2529">Building Steps (Struts)</A></LI>
<UL>
@@ -362,7 +362,7 @@ cp struts-$VERSION-all.* /www/www.apache
</PRE>
</DIV></DIV>
-<P>If a new DTD was defined, copy it to <TT>/www/struts.apache.org/dtds/</TT> and change permission to struts group (<TT>chown :struts *.dtd</TT>) and write rights (<TT>chmod g+w *.dtd</TT>).</P>
+<P>If a new DTD was defined, add it to <A href="https://svn.apache.org/repos/asf/struts/site/trunk/pom.xml" class="external-link" rel="nofollow">https://svn.apache.org/repos/asf/struts/site/trunk/pom.xml</A>, in <TT>get-dtds</TT> execution section.</P>
<DIV class="panelMacro"><TABLE class="noteMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD>The default setup on people.apache.org will leave the files and directories only changeable by the user who creates them. The last two steps will allow future releases to go smoothly.</TD></TR></TABLE></DIV>
@@ -371,7 +371,14 @@ cp struts-$VERSION-all.* /www/www.apache
See <A href="http://maven.apache.org/developers/release/apache-release.html" class="external-link" rel="nofollow">Releasing a Maven-based project</A> for further details.</P>
<H3><A name="BuildingStruts2-Normalrelease-Cleanupoldreleases"></A>Clean up old releases</H3>
-<P>Remove the old files from under <TT>/www/www.apache.org/dist/struts/</TT> to synchronise only the latest version with peers. All the files from <TT>/www/www.apache.org/dist/</TT> are always mirrored to <TT><A href="http://archive.apache.org/dist/struts/" class="external-link" rel="nofollow">http://archive.apache.org/dist/struts/</A></TT></P>
+<P>Remove the old files from under <TT>/www/www.apache.org/dist/struts/</TT> to synchronise only the latest version with peers. All the files from <TT>/www/www.apache.org/dist/</TT> are always mirrored to <TT><A href="http://archive.apache.org/dist/struts/" class="external-link" rel="nofollow">http://archive.apache.org/dist/struts/</A></TT>. You can use the below command:</P>
+<DIV class="preformatted panel" style="border-width: 1px;"><DIV class="preformattedContent panelContent">
+<PRE>cd /www/www.apache.org/dist/struts/
+find . -type f -name "struts-2.3.x*" -exec rm -f {} \;
+</PRE>
+</DIV></DIV>
+
+<P>where <TT>x</TT> is the previous version to remove (or one more previous to keep current and one version back).</P>
<H3><A name="BuildingStruts2-Normalrelease-Waitforrsync"></A>Wait for rsync</H3>
<P>Wait 24 hours before proceeding. </P>
@@ -379,6 +386,8 @@ See <A href="http://maven.apache.org/dev
<H3><A name="BuildingStruts2-Normalrelease-%28Optional%29UpdateSecurityBulletins"></A>(Optional) - Update Security Bulletins</H3>
<P>If the release will fix a - hopefully yet undisclosed - security issue, it's now time to update the <A href="security-bulletins.html" title="Security Bulletins">Security Bulletins</A> page and add a new announcement. For a template, just check former announcements</P>
+<DIV class="panelMacro"><TABLE class="warningMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD>The below is not true any more - please wait for update!</TD></TR></TABLE></DIV>
+
<H3><A name="BuildingStruts2-Normalrelease-Updatesite%28Struts2site%29"></A>Update site (Struts 2 site)</H3>
<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent panelContent">
<PRE class="code-java">
Modified: websites/production/struts/content/development/2.x/docs/conversionerrorfieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/conversionerrorfieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/conversionerrorfieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -152,6 +152,12 @@ See <A href="http://wiki.opensymphony.co
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/customvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/customvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/customvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
@@ -165,8 +171,8 @@ under the License.
<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>
+<TD class="confluenceTd">name of validator</TD>
+<TD class="confluenceTd">Simple string which identifies that validator among other</TD>
</TR>
</TABLE></P>
Modified: websites/production/struts/content/development/2.x/docs/daterangefieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/daterangefieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/daterangefieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/debugging-struts.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/debugging-struts.html (original)
+++ websites/production/struts/content/development/2.x/docs/debugging-struts.html Sun Mar 24 11:37:24 2013
@@ -123,7 +123,7 @@ under the License.
<DIV class="pagecontent">
<DIV class="wiki-content">
- <DIV class="panelMacro"><TABLE class="infoMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD>The example code for this tutorial, Debugging_Struts2_Ant or Debugging_Struts2_Mvn, is available on Google Code - <A href="http://code.google.com/p/struts2-examples/downloads/list" class="external-link" rel="nofollow">http://code.google.com/p/struts2-examples/downloads/list</A>. After downloading and unzipping the file, you'll have a folder named Debugging_Struts2_Ant (or Debugging_Struts2_Mvn). In that folder will be a README.txt file with instructions on now to build and run the example application.</TD></TR></TABLE></DIV>
+ <DIV class="panelMacro"><TABLE class="infoMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD>The example code for this tutorial, Debugging_Struts2_Mvn, is available on Google Code - <A href="http://code.google.com/p/struts2-examples/downloads/list" class="external-link" rel="nofollow">http://code.google.com/p/struts2-examples/downloads/list</A>. After downloading and unzipping the file, you'll have a folder named Debugging_Struts2_Mvn. In that folder will be a README.txt file with instructions on how to build and run the example application.</TD></TR></TABLE></DIV>
<H3><A name="DebuggingStruts-Introduction"></A>Introduction</H3>
<P>During development of a Struts 2 web application you may want to view the information being managed by the Struts 2 framework. This tutorial will cover two tools you can use to see how Struts 2 views your web application. One tool is the Struts 2 configuration plugin and the other is the debugging interceptor. This article also discusses how to set the log level to see more or fewer log messages.</P>
@@ -152,7 +152,7 @@ under the License.
<P>You may then click on one of the tabs (Results, Exception Mappings, Interceptors, Properties, Validators) to get more information about how the Struts 2 framework is has configured that specific action. </P>
-<P>On the left side of the page is the config browser plugin menu. Clicking on constants will render a view that lists all the Struts 2 constants and their properties for your application. Clicking on beans does not currently work. Clicking on Jars shows the jars your application is using.</P>
+<P>On the left side of the page is the config browser plugin menu. Clicking on constants will render a view that lists all the Struts 2 constants and their properties for your application. Clicking on beans shows the beans Struts 2 is managing. Clicking on Jars shows the jars your application is using.</P>
<H3><A name="DebuggingStruts-UsingtheDebuggingInterceptor"></A>Using the Debugging Interceptor</H3>
<P>If you have set devmode to true (in the example application see struts.xml) then one of the interceptors that is activated when Struts 2 processes an action is the DebuggingInterceptor. The DebuggingInterceptor looks for a query string appended to the action URL with a name of debug and a value of xml, console, command, or browser.</P>
Modified: websites/production/struts/content/development/2.x/docs/doublerangefieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/doublerangefieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/doublerangefieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -152,6 +152,12 @@ If neither min nor max is set, nothing w
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/email-validator.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/email-validator.html (original)
+++ websites/production/struts/content/development/2.x/docs/email-validator.html Sun Mar 24 11:37:24 2013
@@ -160,6 +160,8 @@ Check also documentation of the RegexpVa
<SPAN class="code-tag"></field></SPAN>
<SPAN class="code-tag"><SPAN class="code-comment"><!-- Field Validator Syntax with expressions --></SPAN></SPAN>
+ <!-- Only available when used with xml based configuration, if you want to have the same
+ flexibility with annotations use @RegexFieldValidator instead -->
<SPAN class="code-tag"><field name=<SPAN class="code-quote">"myEmail"</SPAN>></SPAN>
<SPAN class="code-tag"><field-validator type=<SPAN class="code-quote">"email"</SPAN>></SPAN>
<SPAN class="code-tag"><param name=<SPAN class="code-quote">"regexExpression"</SPAN>></SPAN>${emailPattern}<SPAN class="code-tag"></param></SPAN> <SPAN class="code-tag"><SPAN class="code-comment"><!-- will be evaluated as: String getEmailPattern() --></SPAN></SPAN>
Modified: websites/production/struts/content/development/2.x/docs/emailvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/emailvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/emailvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/expressionvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/expressionvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/expressionvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -154,6 +154,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">shortCircuit</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd">false</TD>
Modified: websites/production/struts/content/development/2.x/docs/fieldexpressionvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/fieldexpressionvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/fieldexpressionvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -154,6 +154,12 @@ false when it is evaluated against the v
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/guides.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/guides.html (original)
+++ websites/production/struts/content/development/2.x/docs/guides.html Sun Mar 24 11:37:24 2013
@@ -352,6 +352,7 @@ under the License.
<H3><A name="Guides-VersionNotes2.3.x"></A>Version Notes 2.3.x</H3>
<UL>
+ <LI><A href="version-notes-2313.html" title="Version Notes 2.3.13">Version Notes 2.3.13</A></LI>
<LI><A href="version-notes-2312.html" title="Version Notes 2.3.12">Version Notes 2.3.12</A></LI>
<LI><A href="version-notes-238.html" title="Version Notes 2.3.8">Version Notes 2.3.8</A></LI>
<LI><A href="version-notes-237.html" title="Version Notes 2.3.7">Version Notes 2.3.7</A></LI>
Modified: websites/production/struts/content/development/2.x/docs/interceptors.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/interceptors.html (original)
+++ websites/production/struts/content/development/2.x/docs/interceptors.html Sun Mar 24 11:37:24 2013
@@ -322,6 +322,8 @@ under the License.
<SPAN class="code-tag"><bean class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.OgnlUtil"</SPAN> /></SPAN>
+ <SPAN class="code-tag"><bean type=<SPAN class="code-quote">"com.opensymphony.xwork2.util.TextParser"</SPAN> name=<SPAN class="code-quote">"struts"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.util.OgnlTextParser"</SPAN> scope=<SPAN class="code-quote">"singleton"</SPAN>/></SPAN>
+
<SPAN class="code-tag"><bean type=<SPAN class="code-quote">"ognl.PropertyAccessor"</SPAN> name=<SPAN class="code-quote">"com.opensymphony.xwork2.util.CompoundRoot"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor"</SPAN> /></SPAN>
<SPAN class="code-tag"><bean type=<SPAN class="code-quote">"ognl.PropertyAccessor"</SPAN> name=<SPAN class="code-quote">"java.lang.Object"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.accessor.ObjectAccessor"</SPAN> /></SPAN>
<SPAN class="code-tag"><bean type=<SPAN class="code-quote">"ognl.PropertyAccessor"</SPAN> name=<SPAN class="code-quote">"java.util.Iterator"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.accessor.XWorkIteratorPropertyAccessor"</SPAN> /></SPAN>
Modified: websites/production/struts/content/development/2.x/docs/intrangefieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/intrangefieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/intrangefieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -152,6 +152,12 @@ If neither min nor max is set, nothing w
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
@@ -198,7 +204,7 @@ If neither min nor max is set, nothing w
<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent panelContent">
<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>)
-@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">"${minValue}"</SPAN>, max = <SPAN class="code-quote">"${maxValue}"</SPAN> parse=<SPAN class="code-quote">"<SPAN class="code-keyword">true</SPAN>"</SPAN>)
+@IntRangeFieldValidator(message = <SPAN class="code-quote">"Default message"</SPAN>, key = <SPAN class="code-quote">"i18n.key"</SPAN>, shortCircuit = <SPAN class="code-keyword">true</SPAN>, minExpression = <SPAN class="code-quote">"${minValue}"</SPAN>, maxExpression = <SPAN class="code-quote">"${maxValue}"</SPAN>)
</PRE>
</DIV></DIV>
Modified: websites/production/struts/content/development/2.x/docs/logging.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/logging.html (original)
+++ websites/production/struts/content/development/2.x/docs/logging.html Sun Mar 24 11:37:24 2013
@@ -220,8 +220,19 @@ under the License.
}
</PRE>
</DIV></DIV>
-
<P>Check <A href="http://struts.apache.org/2.x/xwork-core/apidocs/com/opensymphony/xwork2/util/logging/package-summary.html" class="external-link" rel="nofollow">the source code</A> to see more details.</P>
+
+<H4><A name="Logging-Definingwhichfactorytouse"></A>Defining which factory to use</H4>
+
+<P>Now you must tell XWork/Struts2 to use your implementation, just define system property like below:</P>
+
+<P><TT>-Dxwork.loggerFactory=com.demo.MyLoggerFactory</TT></P>
+
+<P>you can use the same to explicit tell the framework which implementation to use and don't depend on class discovery, eg.:</P>
+
+<P><TT>-Dxwork.loggerFactory=com.opensymphony.xwork2.util.logging.slf4j.Slf4jLoggerFactory</TT></P>
+
+<P>will enable Slf4j even if there is commons-logging on classpath available (commons-logging is the first LoggerFactory to look for).</P>
</DIV>
Modified: websites/production/struts/content/development/2.x/docs/migration-guide.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/migration-guide.html (original)
+++ websites/production/struts/content/development/2.x/docs/migration-guide.html Sun Mar 24 11:37:24 2013
@@ -129,6 +129,7 @@ under the License.
<H3><A name="MigrationGuide-VersionNotes2.3.x"></A>Version Notes 2.3.x</H3>
<UL>
+ <LI><A href="version-notes-2313.html" title="Version Notes 2.3.13">Version Notes 2.3.13</A></LI>
<LI><A href="version-notes-2312.html" title="Version Notes 2.3.12">Version Notes 2.3.12</A></LI>
<LI><A href="version-notes-238.html" title="Version Notes 2.3.8">Version Notes 2.3.8</A></LI>
<LI><A href="version-notes-237.html" title="Version Notes 2.3.7">Version Notes 2.3.7</A></LI>
Modified: websites/production/struts/content/development/2.x/docs/plugins.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/plugins.html (original)
+++ websites/production/struts/content/development/2.x/docs/plugins.html Sun Mar 24 11:37:24 2013
@@ -364,6 +364,13 @@ Assuming /static/main.css is inside a pl
<TD>singleton</TD>
<TD>Holds user converters' instances</TD>
</TR>
+ <TR>
+ <TD>com.opensymphony.xwork2.util.TextParser</TD>
+ <TD>struts.expression.parser</TD>
+ <TD>singleton</TD>
+ <TD>Used to parse expressions like ${foo.bar} or %{bar.foo} but it is up tp the TextParser's
+ implementation what kind of opening char to use (#, $, %, etc)</TD>
+ </TR>
</TABLE></P>
Modified: websites/production/struts/content/development/2.x/docs/regexfieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/regexfieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/regexfieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/requiredfieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/requiredfieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/requiredfieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/requiredstringvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/requiredstringvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/requiredstringvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/stringlength-validator.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/stringlength-validator.html (original)
+++ websites/production/struts/content/development/2.x/docs/stringlength-validator.html Sun Mar 24 11:37:24 2013
@@ -132,13 +132,13 @@ String before performing the length chec
<H1><A name="stringlengthvalidator-Parameters"></A>Parameters</H1>
<P><UL>
- <LI>fieldName - The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required</LI>
- <LI>maxLength - Integer. The max length of the field value. Default ignore.</LI>
- <LI>minLength - Integer. The min length of the field value. Default ignore.</LI>
- <LI>trim - (Optional) Boolean, default true. Trim the field value before evaluating its min/max length. Default true.</LI>
- <LI>maxLengthExpression - (Optional) String. Defines the max length param as an OGNL expression</LI>
- <LI>minLengthExpression - (Optional) String. Defines the min length param as an OGNL expression</LI>
- <LI>trimExpression - (Optional) String. Defines th trim param as an OGNL expression</LI>
+<LI>fieldName - The field name this validator is validating. Required if using Plain-Validator Syntax otherwise not required</LI>
+<LI>maxLength - Integer. The max length of the field value. Default ignore.</LI>
+<LI>minLength - Integer. The min length of the field value. Default ignore.</LI>
+<LI>trim - (Optional) Boolean, default true. Trim the field value before evaluating its min/max length. Default true.</LI>
+<LI>maxLengthExpression - (Optional) String. Defines the max length param as an OGNL expression</LI>
+<LI>minLengthExpression - (Optional) String. Defines the min length param as an OGNL expression</LI>
+<LI>trimExpression - (Optional) String. Defines th trim param as an OGNL expression</LI>
</UL></P>
<DIV class="panelMacro"><TABLE class="warningMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD><B>Warning</B><BR><P>Do not use ${minLengthExpression}, ${maxLengthExpression} and ${trimExpression} as an expression as this will turn into infinitive loop!</P></TD></TR></TABLE></DIV>
Modified: websites/production/struts/content/development/2.x/docs/stringlengthfieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/stringlengthfieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/stringlengthfieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -152,6 +152,12 @@ If neither minLength nor maxLength is se
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/struts-defaultxml.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/struts-defaultxml.html (original)
+++ websites/production/struts/content/development/2.x/docs/struts-defaultxml.html Sun Mar 24 11:37:24 2013
@@ -232,6 +232,8 @@ under the License.
<SPAN class="code-tag"><bean class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.OgnlUtil"</SPAN> /></SPAN>
+ <SPAN class="code-tag"><bean type=<SPAN class="code-quote">"com.opensymphony.xwork2.util.TextParser"</SPAN> name=<SPAN class="code-quote">"struts"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.util.OgnlTextParser"</SPAN> scope=<SPAN class="code-quote">"singleton"</SPAN>/></SPAN>
+
<SPAN class="code-tag"><bean type=<SPAN class="code-quote">"ognl.PropertyAccessor"</SPAN> name=<SPAN class="code-quote">"com.opensymphony.xwork2.util.CompoundRoot"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor"</SPAN> /></SPAN>
<SPAN class="code-tag"><bean type=<SPAN class="code-quote">"ognl.PropertyAccessor"</SPAN> name=<SPAN class="code-quote">"java.lang.Object"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.accessor.ObjectAccessor"</SPAN> /></SPAN>
<SPAN class="code-tag"><bean type=<SPAN class="code-quote">"ognl.PropertyAccessor"</SPAN> name=<SPAN class="code-quote">"java.util.Iterator"</SPAN> class=<SPAN class="code-quote">"com.opensymphony.xwork2.ognl.accessor.XWorkIteratorPropertyAccessor"</SPAN> /></SPAN>
Modified: websites/production/struts/content/development/2.x/docs/urlvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/urlvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/urlvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -151,6 +151,12 @@ under the License.
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>
Modified: websites/production/struts/content/development/2.x/docs/version-notes-2311.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/version-notes-2311.html (original)
+++ websites/production/struts/content/development/2.x/docs/version-notes-2311.html Sun Mar 24 11:37:24 2013
@@ -74,13 +74,13 @@ under the License.
hide.style.display = 'none';
}
</SCRIPT>
- <TITLE>Version Notes 2.3.11</TITLE>
+ <TITLE>Version Notes 2.3.1.1</TITLE>
<META http-equiv="Content-Type" content="text/html;charset=UTF-8"></HEAD>
<BODY onload="init()">
<TABLE border="0" cellpadding="2" cellspacing="0" width="100%">
<TR class="topBar">
<TD align="left" valign="middle" class="topBarDiv" align="left" nowrap="">
- <A href="home.html" title="Apache Struts 2 Documentation">Apache Struts 2 Documentation</A> > <A href="home.html" title="Home">Home</A> > <A href="guides.html" title="Guides">Guides</A> > <A href="migration-guide.html" title="Migration Guide">Migration Guide</A> > <A href="" title="Version Notes 2.3.11">Version Notes 2.3.11</A>
+ <A href="home.html" title="Apache Struts 2 Documentation">Apache Struts 2 Documentation</A> > <A href="home.html" title="Home">Home</A> > <A href="guides.html" title="Guides">Guides</A> > <A href="migration-guide.html" title="Migration Guide">Migration Guide</A> > <A href="" title="Version Notes 2.3.1.1">Version Notes 2.3.1.1</A>
</TD>
<TD align="right" valign="middle" nowrap="">
<FORM name="search" action="http://www.google.com/search" method="get">
@@ -100,32 +100,32 @@ under the License.
<!-- We'll enable this once we figure out how to access (and save) the logo resource -->
<!--img src="/wiki/images/confluence_logo.gif" style="float: left; margin: 4px 4px 4px 10px;" border="0"-->
<DIV style="margin: 0px 10px 0px 10px" class="smalltext">Apache Struts 2 Documentation</DIV>
- <DIV style="margin: 0px 10px 8px 10px" class="pagetitle">Version Notes 2.3.11</DIV>
+ <DIV style="margin: 0px 10px 8px 10px" class="pagetitle">Version Notes 2.3.1.1</DIV>
<DIV class="greynavbar" align="right" style="padding: 2px 10px; margin: 0px;">
- <A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=30746909">
+ <A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=27833981">
<IMG src="https://cwiki.apache.org/confluence/images/icons/notep_16.gif" height="16" width="16" border="0" align="absmiddle" title="Edit Page"></A>
- <A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=30746909">Edit Page</A>
+ <A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=27833981">Edit Page</A>
<A href="https://cwiki.apache.org/confluence/pages/listpages.action?key=WW">
<IMG src="https://cwiki.apache.org/confluence/images/icons/browse_space.gif" height="16" width="16" border="0" align="absmiddle" title="Browse Space"></A>
<A href="https://cwiki.apache.org/confluence/pages/listpages.action?key=WW">Browse Space</A>
- <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=30746909">
+ <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=27833981">
<IMG src="https://cwiki.apache.org/confluence/images/icons/add_page_16.gif" height="16" width="16" border="0" align="absmiddle" title="Add Page"></A>
- <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=30746909">Add Page</A>
+ <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=27833981">Add Page</A>
- <A href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=30746909">
+ <A href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=27833981">
<IMG src="https://cwiki.apache.org/confluence/images/icons/add_blogentry_16.gif" height="16" width="16" border="0" align="absmiddle" title="Add News"></A>
- <A href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=30746909">Add News</A>
+ <A href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=27833981">Add News</A>
</DIV>
</DIV>
<DIV class="pagecontent">
<DIV class="wiki-content">
- <P><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"> These are the notes for the Struts 2.3.10 distribution.</P>
+ <P><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"> These are the notes for the Struts 2.3.1.1 distribution.</P>
-<P><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"> For prior notes in this release series, see <A href="version-notes-238.html" title="Version Notes 2.3.8">Version Notes 2.3.8</A></P>
+<P><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"> For prior notes in this release series, see <A href="version-notes-231.html" title="Version Notes 2.3.1">Version Notes 2.3.1</A></P>
<UL>
<LI>If you are a Maven user, you might want to get started using the <A href="struts-2-maven-archetypes.html" title="Struts 2 Maven Archetypes">Maven Archetype</A>.</LI>
@@ -137,7 +137,7 @@ under the License.
<PRE class="code-xml"><SPAN class="code-tag"><dependency></SPAN>
<SPAN class="code-tag"><groupId></SPAN>org.apache.struts<SPAN class="code-tag"></groupId></SPAN>
<SPAN class="code-tag"><artifactId></SPAN>struts2-core<SPAN class="code-tag"></artifactId></SPAN>
- <SPAN class="code-tag"><version></SPAN>2.3.11<SPAN class="code-tag"></version></SPAN>
+ <SPAN class="code-tag"><version></SPAN>2.3.1.1<SPAN class="code-tag"></version></SPAN>
<SPAN class="code-tag"></dependency></SPAN></PRE>
</DIV></DIV>
@@ -145,7 +145,7 @@ under the License.
<DIV class="code panel" style="border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;"><B>Struts Archetype Catalog</B></DIV><DIV class="codeContent panelContent">
<PRE class="code-none">
-mvn archetype:generate -DarchetypeCatalog=http://struts.apache.org/2.3.11/
+mvn archetype:generate -DarchetypeCatalog=http://struts.apache.org/2.3.1.1/
</PRE>
</DIV></DIV>
@@ -159,34 +159,30 @@ mvn archetype:generate -DarchetypeCatalo
<SPAN class="code-tag"></repositories></SPAN></PRE>
</DIV></DIV>
-<H2><A name="VersionNotes2.3.11-InternalChanges"></A>Internal Changes</H2>
+<H2><A name="VersionNotes2.3.1.1-InternalChanges"></A>Internal Changes</H2>
<UL>
- <LI>All validators were refactored and right now parameters can be set via OGNL also parameter <EM>parse</EM> was removed - <A href="https://issues.apache.org/jira/browse/WW-2923" class="external-link" rel="nofollow">WW-2923</A> - please be aware that param names changed a bit, review documentation <A href="validation.html#Validation-BundledValidators">Validation</A></LI>
- <LI><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/warning.gif" height="16" width="16" align="absmiddle" alt="" border="0"> tag's <EM>required</EM> attribute was renamed to <EM>requiredLabel</EM> to allow support of Html5 required attribute in the tags - <A href="https://issues.apache.org/jira/browse/WW-3908" class="external-link" rel="nofollow">WW-3908</A></LI>
- <LI>new <A href="tiles-3-plugin.html" class="external-link" rel="nofollow">Tiles 3 plugin</A> added to support Tiles 3 result type - <A href="https://issues.apache.org/jira/browse/WW-3931" class="external-link" rel="nofollow">WW-3931</A></LI>
- <LI>as mentioned in <A href="https://issues.apache.org/jira/browse/WW-3973" class="external-link" rel="nofollow">WW-3973</A> with previous release behaviour of <A href="parameters-interceptor.html" title="Parameters Interceptor">Parameters Interceptor</A> changed a bit - please read careful over the linked page</LI>
- <LI>migrated site to the Apache CMS and SvnPubSub</LI>
+ <LI>Strict DMI mode was improved and now it should work correctly, you can find more details <A href="http://www.brucephillips.name/blog/index.cfm/2011/2/19/Struts-2-Security-Vulnerability--Dynamic-Method-Invocation" class="external-link" rel="nofollow">here </A></LI>
+ <LI>Default acceptedParamNames were updated to more restrictive values to solve security vulnerabilities in ParameterInterceptor - support for param names with withe spaces was dropped! Also a new configuration was added to CookieInterceptor call acceptCookieNames to prevent remote code execution with cookies. There is a security weaknesses in DebuggingInterceptor as a wanted feature in Development Mode, which anyway should not be used it in a production environment!</LI>
</UL>
-<H3><A name="VersionNotes2.3.11-IssueDetail"></A>Issue Detail</H3>
+<H3><A name="VersionNotes2.3.1.1-IssueDetail"></A>Issue Detail</H3>
<UL>
- <LI><A href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311041&version=12323903" class="external-link" rel="nofollow">JIRA Release Notes 2.3.11</A></LI>
+ <LI><A href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311041&version=12319277" class="external-link" rel="nofollow">JIRA Release Notes 2.3.1.1 </A></LI>
</UL>
-<H3><A name="VersionNotes2.3.11-IssueList"></A>Issue List</H3>
+<H3><A name="VersionNotes2.3.1.1-IssueList"></A>Issue List</H3>
<UL>
- <LI><A href="https://issues.apache.org/jira/issues/?filter=12323498" class="external-link" rel="nofollow">Struts 2.3.11 DONE</A></LI>
- <LI><A href="https://issues.apache.org/jira/issues/?filter=12323499" class="external-link" rel="nofollow">Struts 2.3.12 TODO</A></LI>
- <LI><A href="https://issues.apache.org/jira/issues/?filter=12318399" class="external-link" rel="nofollow">Struts 2.3.x TODO</A></LI>
+ <LI><A href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12318481" class="external-link" rel="nofollow">Struts 2.3.1.1 DONE </A></LI>
+ <LI><A href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=12318399" class="external-link" rel="nofollow">Struts 2.3.x TODO </A></LI>
</UL>
-<H3><A name="VersionNotes2.3.11-Otherresources"></A>Other resources</H3>
+<H3><A name="VersionNotes2.3.1.1-Otherresources"></A>Other resources</H3>
<UL>
<LI><A href="http://www.mail-archive.com/commits@struts.apache.org/" class="external-link" rel="nofollow">Commit Logs (Struts 1 and Struts 2)</A></LI>
Added: websites/production/struts/content/development/2.x/docs/version-notes-2313.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/version-notes-2313.html (added)
+++ websites/production/struts/content/development/2.x/docs/version-notes-2313.html Sun Mar 24 11:37:24 2013
@@ -0,0 +1,205 @@
+
+<!--
+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.
+-->
+
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+ <HEAD>
+ <LINK type="text/css" rel="stylesheet" href="https://struts.apache.org/css/default.css">
+ <STYLE type="text/css">
+ .dp-highlighter {
+ width:95% !important;
+ }
+ </STYLE>
+ <STYLE type="text/css">
+ .footer {
+ background-image: url('https://cwiki.apache.org/confluence/images/border/border_bottom.gif');
+ background-repeat: repeat-x;
+ background-position: left top;
+ padding-top: 4px;
+ color: #666;
+ }
+ </STYLE>
+ <SCRIPT type="text/javascript" language="javascript">
+ var hide = null;
+ var show = null;
+ var children = null;
+
+ function init() {
+ /* Search form initialization */
+ var form = document.forms['search'];
+ if (form != null) {
+ form.elements['domains'].value = location.hostname;
+ form.elements['sitesearch'].value = location.hostname;
+ }
+
+ /* Children initialization */
+ hide = document.getElementById('hide');
+ show = document.getElementById('show');
+ children = document.all != null ?
+ document.all['children'] :
+ document.getElementById('children');
+ if (children != null) {
+ children.style.display = 'none';
+ show.style.display = 'inline';
+ hide.style.display = 'none';
+ }
+ }
+
+ function showChildren() {
+ children.style.display = 'block';
+ show.style.display = 'none';
+ hide.style.display = 'inline';
+ }
+
+ function hideChildren() {
+ children.style.display = 'none';
+ show.style.display = 'inline';
+ hide.style.display = 'none';
+ }
+ </SCRIPT>
+ <TITLE>Version Notes 2.3.13</TITLE>
+ <META http-equiv="Content-Type" content="text/html;charset=UTF-8"></HEAD>
+ <BODY onload="init()">
+ <TABLE border="0" cellpadding="2" cellspacing="0" width="100%">
+ <TR class="topBar">
+ <TD align="left" valign="middle" class="topBarDiv" align="left" nowrap="">
+ <A href="home.html" title="Apache Struts 2 Documentation">Apache Struts 2 Documentation</A> > <A href="home.html" title="Home">Home</A> > <A href="guides.html" title="Guides">Guides</A> > <A href="migration-guide.html" title="Migration Guide">Migration Guide</A> > <A href="" title="Version Notes 2.3.13">Version Notes 2.3.13</A>
+ </TD>
+ <TD align="right" valign="middle" nowrap="">
+ <FORM name="search" action="http://www.google.com/search" method="get">
+ <INPUT type="hidden" name="ie" value="UTF-8">
+ <INPUT type="hidden" name="oe" value="UTF-8">
+ <INPUT type="hidden" name="domains" value="">
+ <INPUT type="hidden" name="sitesearch" value="">
+ <INPUT type="text" name="q" maxlength="255" value="">
+ <INPUT type="submit" name="btnG" value="Google Search">
+ </FORM>
+ </TD>
+ </TR>
+ </TABLE>
+
+ <DIV id="PageContent">
+ <DIV class="pageheader" style="padding: 6px 0px 0px 0px;">
+ <!-- We'll enable this once we figure out how to access (and save) the logo resource -->
+ <!--img src="/wiki/images/confluence_logo.gif" style="float: left; margin: 4px 4px 4px 10px;" border="0"-->
+ <DIV style="margin: 0px 10px 0px 10px" class="smalltext">Apache Struts 2 Documentation</DIV>
+ <DIV style="margin: 0px 10px 8px 10px" class="pagetitle">Version Notes 2.3.13</DIV>
+
+ <DIV class="greynavbar" align="right" style="padding: 2px 10px; margin: 0px;">
+ <A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=30759198">
+ <IMG src="https://cwiki.apache.org/confluence/images/icons/notep_16.gif" height="16" width="16" border="0" align="absmiddle" title="Edit Page"></A>
+ <A href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=30759198">Edit Page</A>
+
+ <A href="https://cwiki.apache.org/confluence/pages/listpages.action?key=WW">
+ <IMG src="https://cwiki.apache.org/confluence/images/icons/browse_space.gif" height="16" width="16" border="0" align="absmiddle" title="Browse Space"></A>
+ <A href="https://cwiki.apache.org/confluence/pages/listpages.action?key=WW">Browse Space</A>
+
+ <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=30759198">
+ <IMG src="https://cwiki.apache.org/confluence/images/icons/add_page_16.gif" height="16" width="16" border="0" align="absmiddle" title="Add Page"></A>
+ <A href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=30759198">Add Page</A>
+
+ <A href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=30759198">
+ <IMG src="https://cwiki.apache.org/confluence/images/icons/add_blogentry_16.gif" height="16" width="16" border="0" align="absmiddle" title="Add News"></A>
+ <A href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=30759198">Add News</A>
+ </DIV>
+ </DIV>
+
+ <DIV class="pagecontent">
+ <DIV class="wiki-content">
+ <P><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"> These are the notes for the Struts 2.3.13 distribution.</P>
+
+<P><IMG class="emoticon" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" height="16" width="16" align="absmiddle" alt="" border="0"> For prior notes in this release series, see <A href="version-notes-238.html" title="Version Notes 2.3.8">Version Notes 2.3.8</A></P>
+
+<UL>
+ <LI>If you are a Maven user, you might want to get started using the <A href="struts-2-maven-archetypes.html" title="Struts 2 Maven Archetypes">Maven Archetype</A>.</LI>
+ <LI>Another quick-start entry point is the <B>blank</B> application. Rename and deploy the WAR as a starting point for your own development.</LI>
+</UL>
+
+
+<DIV class="code panel" style="border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;"><B>Maven Dependency</B></DIV><DIV class="codeContent panelContent">
+<PRE class="code-xml"><SPAN class="code-tag"><dependency></SPAN>
+ <SPAN class="code-tag"><groupId></SPAN>org.apache.struts<SPAN class="code-tag"></groupId></SPAN>
+ <SPAN class="code-tag"><artifactId></SPAN>struts2-core<SPAN class="code-tag"></artifactId></SPAN>
+ <SPAN class="code-tag"><version></SPAN>2.3.13<SPAN class="code-tag"></version></SPAN>
+<SPAN class="code-tag"></dependency></SPAN></PRE>
+</DIV></DIV>
+
+<P>You can also use Struts Archetype Catalog like below</P>
+
+<DIV class="code panel" style="border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;"><B>Struts Archetype Catalog</B></DIV><DIV class="codeContent panelContent">
+<PRE class="code-none">
+mvn archetype:generate -DarchetypeCatalog=http://struts.apache.org/
+</PRE>
+</DIV></DIV>
+
+<DIV class="code panel" style="border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;"><B>Staging Repository</B></DIV><DIV class="codeContent panelContent">
+<PRE class="code-xml"><SPAN class="code-tag"><repositories></SPAN>
+ <SPAN class="code-tag"><repository></SPAN>
+ <SPAN class="code-tag"><id></SPAN>apache.nexus<SPAN class="code-tag"></id></SPAN>
+ <SPAN class="code-tag"><name></SPAN>ASF Nexus Staging<SPAN class="code-tag"></name></SPAN>
+ <SPAN class="code-tag"><url></SPAN>https://repository.apache.org/content/groups/staging/<SPAN class="code-tag"></url></SPAN>
+ <SPAN class="code-tag"></repository></SPAN>
+<SPAN class="code-tag"></repositories></SPAN></PRE>
+</DIV></DIV>
+
+<H2><A name="VersionNotes2.3.13-InternalChanges"></A>Internal Changes</H2>
+
+<UL>
+ <LI>All the annotations related to validators were updated to match the implementing classes</LI>
+ <LI>The JUnit plugin supports now the Convention plugin configuration (check StrutsJUnit4ConventionTestCaseTest)</LI>
+ <LI>and other small improvments</LI>
+</UL>
+
+
+<H3><A name="VersionNotes2.3.13-IssueDetail"></A>Issue Detail</H3>
+
+<UL>
+ <LI><A href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12324132&projectId=12311041" class="external-link" rel="nofollow">JIRA Release Notes 2.3.13</A></LI>
+</UL>
+
+
+<H3><A name="VersionNotes2.3.13-IssueList"></A>Issue List</H3>
+
+<UL>
+ <LI><A href="https://issues.apache.org/jira/issues/?filter=12323782" class="external-link" rel="nofollow">Struts 2.3.13 DONE</A></LI>
+ <LI><A href="https://issues.apache.org/jira/issues/?filter=12323783" class="external-link" rel="nofollow">Struts 2.3.14 TODO</A></LI>
+ <LI><A href="https://issues.apache.org/jira/issues/?filter=12318399" class="external-link" rel="nofollow">Struts 2.3.x TODO</A></LI>
+</UL>
+
+
+<H3><A name="VersionNotes2.3.13-Otherresources"></A>Other resources</H3>
+
+<UL>
+ <LI><A href="http://www.mail-archive.com/commits@struts.apache.org/" class="external-link" rel="nofollow">Commit Logs (Struts 1 and Struts 2)</A></LI>
+ <LI><A href="http://svn.apache.org/viewvc/struts/struts2/trunk/" class="external-link" rel="nofollow">Source Code Repository (includes change browsing)</A></LI>
+</UL>
+
+ </DIV>
+
+
+ </DIV>
+ </DIV>
+ <DIV class="footer">
+ Generated by
+ <A href="http://www.atlassian.com/confluence/">Atlassian Confluence</A> (Version: 3.4.9 Build: 2042 Feb 14, 2011)
+ <A href="http://could.it/autoexport/">Auto Export Plugin</A> (Version: 1.0.0-dkulp)
+ </DIV>
+ </BODY>
+</HTML>
\ No newline at end of file
Modified: websites/production/struts/content/development/2.x/docs/visitorfieldvalidator-annotation.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/visitorfieldvalidator-annotation.html (original)
+++ websites/production/struts/content/development/2.x/docs/visitorfieldvalidator-annotation.html Sun Mar 24 11:37:24 2013
@@ -158,6 +158,12 @@ by the validations for the Object messag
<TD class="confluenceTd">i18n key from language specific properties file.</TD>
</TR>
<TR>
+<TD class="confluenceTd">messageParams</TD>
+<TD class="confluenceTd">no</TD>
+<TD class="confluenceTd"> </TD>
+<TD class="confluenceTd">Additional params to be used to customize message - will be evaluated against the Value Stack</TD>
+</TR>
+<TR>
<TD class="confluenceTd">fieldName</TD>
<TD class="confluenceTd">no</TD>
<TD class="confluenceTd"> </TD>