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 2017/07/13 06:49:08 UTC

svn commit: r1015383 [2/2] - in /websites/production/struts/content: ./ docs/

Modified: websites/production/struts/content/docs/validation.html
==============================================================================
--- websites/production/struts/content/docs/validation.html (original)
+++ websites/production/struts/content/docs/validation.html Thu Jul 13 06:49:07 2017
@@ -140,11 +140,11 @@ under the License.
     <div class="pagecontent">
         <div class="wiki-content">
             <div id="ConfluenceContent"><p>Struts 2 validation is configured via XML or annotations. Manual validation in the action is also possible, and may be combined with XML and annotation-driven validation.</p><p>Validation also depends on both the <code>validation</code> and <code>workflow</code> interceptors (both are included in the default interceptor stack). The <code>validation</code> interceptor does the validation itself and creates a list of field-specific errors. The <code>workflow</code> interceptor checks for the presence of validation errors: if any are found, it returns the "input" result (by default), taking the user back to the form which contained the validation errors.</p><p>If we're using the default settings <em>and</em> our action doesn't have an "input" result defined <em>and</em> there are validation (or, incidentally, type conversion) errors, we'll get an error message back telling us there's no "input" result defined for the action.</p><p><strong>CONT
 ENTS</strong></p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1499445462886 {padding: 0px;}
-div.rbtoc1499445462886 ul {list-style: none;margin-left: 0px;}
-div.rbtoc1499445462886 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1499928416993 {padding: 0px;}
+div.rbtoc1499928416993 ul {list-style: none;margin-left: 0px;}
+div.rbtoc1499928416993 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1499445462886">
+/*]]>*/</style></p><div class="toc-macro rbtoc1499928416993">
 <ul class="toc-indentation"><li><span class="TOCOutline">1</span> <a shape="rect" href="#Validation-UsingAnnotations">Using Annotations</a></li><li><span class="TOCOutline">2</span> <a shape="rect" href="#Validation-BeanValidation">Bean Validation</a></li><li><span class="TOCOutline">3</span> <a shape="rect" href="#Validation-Examples">Examples</a></li><li><span class="TOCOutline">4</span> <a shape="rect" href="#Validation-BundledValidators">Bundled Validators</a></li><li><span class="TOCOutline">5</span> <a shape="rect" href="#Validation-RegisteringValidators">Registering Validators</a></li><li><span class="TOCOutline">6</span> <a shape="rect" href="#Validation-TurningonValidation">Turning on Validation</a></li><li><span class="TOCOutline">7</span> <a shape="rect" href="#Validation-ValidatorScopes">Validator Scopes</a>
 <ul class="toc-indentation"><li><span class="TOCOutline">7.1</span> <a shape="rect" href="#Validation-Notes">Notes</a></li></ul>
 </li><li><span class="TOCOutline">8</span> <a shape="rect" href="#Validation-DefiningValidationRules">Defining Validation Rules</a></li><li><span class="TOCOutline">9</span> <a shape="rect" href="#Validation-LocalizingandParameterizingMessages">Localizing and Parameterizing Messages</a></li><li><span class="TOCOutline">10</span> <a shape="rect" href="#Validation-ValidatorFlavor">Validator Flavor</a></li><li><span class="TOCOutline">11</span> <a shape="rect" href="#Validation-Non-FieldValidatorVsField-Validatorvalidatortypes">Non-Field Validator Vs Field-Validator</a></li><li><span class="TOCOutline">12</span> <a shape="rect" href="#Validation-Short-CircuitingValidator">Short-Circuiting Validator</a></li><li><span class="TOCOutline">13</span> <a shape="rect" href="#Validation-HowValidatorsofanActionareFound">How Validators of an Action are Found</a></li><li><span class="TOCOutline">14</span> <a shape="rect" href="#Validation-Writingcustomvalidators">Writing custom validators</a></li>
 <li><span class="TOCOutline">15</span> <a shape="rect" href="#Validation-Resources">Resources</a></li><li><span class="TOCOutline">16</span> <a shape="rect" href="#Validation-Next:">Next: Localization</a></li></ul>

Modified: websites/production/struts/content/docs/version-notes-2333.html
==============================================================================
--- websites/production/struts/content/docs/version-notes-2333.html (original)
+++ websites/production/struts/content/docs/version-notes-2333.html Thu Jul 13 06:49:07 2017
@@ -156,7 +156,7 @@ under the License.
     &lt;url&gt;https://repository.apache.org/content/groups/staging/&lt;/url&gt;
   &lt;/repository&gt;
 &lt;/repositories&gt;</pre>
-</div></div><h2 id="VersionNotes2.3.33-InternalChanges">Internal Changes</h2><ul><li><p><img class="emoticon emoticon-warning" src="https://cwiki.apache.org/confluence/s/en_GB/5997/6f42626d00e36f53fe51440403446ca61552e2a2.1/_/images/icons/emoticons/warning.png" data-emoticon-name="warning" alt="(warning)">&#160;Possible Remote Code Execution when performing file upload based on Jakarta plugin&#160;<a shape="rect" href="s2-045.html">S2-045</a></p></li></ul><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p><span>This release contains a fix related to </span><a shape="rect" href="s2-045.html">S2-045</a><span>, please read this carefully!</span></p></div></div><h3 id="VersionNotes2.3.33-IssueDetail">Issue Detail</h3><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/sec
 ure/ReleaseNote.jspa?version=12340265&amp;projectId=12311041">JIRA Release Notes 2.3.33</a></li></ul><h3 id="VersionNotes2.3.33-IssueList">Issue List</h3><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12341235">Struts 2.3.33 DONE</a></li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12318399">Struts 2.3.x TODO</a></li></ul><h3 id="VersionNotes2.3.33-Otherresources">Other resources</h3><ul><li><a shape="rect" class="external-link" href="http://www.mail-archive.com/commits%40struts.apache.org/" rel="nofollow">Commit Logs</a></li><li><a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf?p=struts.git;a=tree;h=refs/heads/develop;hb=develop">Source Code Repository</a></li></ul><div><span style="font-size: 24.0px;line-height: 30.0px;"><br clear="none"></span></div><div><span style="font-size: 24.0px;line-height: 30.0px;background-color: rgb(245,245,245);"><br cle
 ar="none"></span></div></div>
+</div></div><h2 id="VersionNotes2.3.33-InternalChanges">Internal Changes</h2><ul><li><img class="emoticon emoticon-warning" src="https://cwiki.apache.org/confluence/s/en_GB/5997/6f42626d00e36f53fe51440403446ca61552e2a2.1/_/images/icons/emoticons/warning.png" data-emoticon-name="warning" alt="(warning)">&#160;Possible RCE in the Struts Showcase app in the Struts 1 plugin example in Struts 2.3.x series, see&#160;<a shape="rect" href="s2-048.html">S2-048</a></li><li><img class="emoticon emoticon-warning" src="https://cwiki.apache.org/confluence/s/en_GB/5997/6f42626d00e36f53fe51440403446ca61552e2a2.1/_/images/icons/emoticons/warning.png" data-emoticon-name="warning" alt="(warning)">&#160;A DoS attack is available for Spring secured actions, see&#160;<a shape="rect" href="s2-049.html">S2-049</a></li></ul><ul><li><h2 id="VersionNotes2.3.33-Bug">Bug</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4735">WW-4735</a>] - EmailValidator does not
  accept new domain suffixes</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4770">WW-4770</a>] - Revision number still missing from dojo.js and dojo.js.uncompressed.js</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4802">WW-4802</a>] - Strange Behavior Parsing Action Requests</li></ul><h2 id="VersionNotes2.3.33-Improvement">Improvement</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4805">WW-4805</a>] - At least a DoS attack is available for Spring secured actions</li></ul></li></ul><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This release contains fixes related to <a shape="rect" href="s2-048.html">S2-048</a> and <a shape="rect" href="s2-049.html">S2-
 049</a>, please read them carefully!</p></div></div><h3 id="VersionNotes2.3.33-IssueDetail">Issue Detail</h3><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12340265&amp;projectId=12311041">JIRA Release Notes 2.3.33</a></li></ul><h3 id="VersionNotes2.3.33-IssueList">Issue List</h3><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12341235">Struts 2.3.33 DONE</a></li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12318399">Struts 2.3.x TODO</a></li></ul><h3 id="VersionNotes2.3.33-Otherresources">Other resources</h3><ul><li><a shape="rect" class="external-link" href="http://www.mail-archive.com/commits%40struts.apache.org/" rel="nofollow">Commit Logs</a></li><li><a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf?p=struts.git;a=tree;h=refs/heads/develop;hb=develop">Source Code Repository</a></l
 i></ul><div><span style="font-size: 24.0px;line-height: 30.0px;"><br clear="none"></span></div><div><span style="font-size: 24.0px;line-height: 30.0px;background-color: rgb(245,245,245);"><br clear="none"></span></div></div>
         </div>
 
         

Modified: websites/production/struts/content/docs/version-notes-2512.html
==============================================================================
--- websites/production/struts/content/docs/version-notes-2512.html (original)
+++ websites/production/struts/content/docs/version-notes-2512.html Thu Jul 13 06:49:07 2017
@@ -156,7 +156,7 @@ under the License.
     &lt;url&gt;https://repository.apache.org/content/groups/staging/&lt;/url&gt;
   &lt;/repository&gt;
 &lt;/repositories&gt;</pre>
-</div></div><h2 id="VersionNotes2.5.12-InternalChanges">Internal Changes</h2><ul style="list-style-type: square;"><li><h2 id="VersionNotes2.5.12-Bug">Bug</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3171">WW-3171</a>] - "double" and "Double" are not validated with the same decimal s&#233;parator</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3357">WW-3357</a>] - ognl.MethodFailedException when you do not enter a value for a field mapped to an int.</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3650">WW-3650</a>] - Double Value Conversion with requestLocale=de</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3659">WW-3659</a>] - strange behavior of s:a tag with s:include tag inside</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3905">WW-3905</a>] - 
 The TextProvider injection in ActionSupport isn't quite integrated into the framework's core DI</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4105">WW-4105</a>] - Struts2 raise java.lang.ClassCastException when Result type is chain</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4472">WW-4472</a>] - @InputConfig annotation is not working when integrating with spring aop</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4528">WW-4528</a>] - ChainingInterceptor does not handle lists correctly for excludes and includes</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4578">WW-4578</a>] - Validators do not work for multiple values</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4581">WW-4581</a>] - BigDecimal are not converted according context locale</li><li>[<
 a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4663">WW-4663</a>] - NullPointerException when displaying a form without action attribute</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4665">WW-4665</a>] - Struts2 JSR286 Portlet fileupload not working</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4694">WW-4694</a>] - AnnotationWorkflowInterceptor doesn't work with spring proxied action</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4736">WW-4736</a>] - Upgrade to Log4j2 version 2.8</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4737">WW-4737</a>] - Array-of-null parameters are converted to arrays containing "null"</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4739">WW-4739</a>] - &lt;s:reset&gt; tag does not proper
 ly interpret the attribute tabindex</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4740">WW-4740</a>] - NullPointer in com.opensymphony.xwork2.ActionSupport.getLocale</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4741">WW-4741</a>] - Http Sessions forcefully created for all requests using I18nInterceptor with default Storage value.</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4746">WW-4746</a>] - cssErrorClass attribute has no effect on label tag</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4747">WW-4747</a>] - s:file generates input tag with "value" attribute</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4750">WW-4750</a>] - Why JSONValidationInterceptor return Status Code 400 BAD_REQUEST instead of 200 SUCCESS</li><li>[<a shape="rect" class="ex
 ternal-link" href="https://issues.apache.org/jira/browse/WW-4758">WW-4758</a>] - @autowired does not work since Struts 2.3.28.1</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4772">WW-4772</a>] - Convention Plugin can't use ${message}</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4773">WW-4773</a>] - Mixed content https to http when upgraded to 2.3.32 or 2.5.10.1</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4774">WW-4774</a>] - Upgrding Struts 2.3.1 to 2.5.10.1 - Redirect issues HTTPS to HTTP</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4775">WW-4775</a>] - Action class Attributes(value stack) is not getting populated through Ajax url request parms</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4784">WW-4784</a>] - &lt;s:url tag is not working aft
 er Struts 2.5.10.1 migration</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4786">WW-4786</a>] - Upgrade from struts2-tiles3-plugin to struts2-tiles-plugin gives a NoSuchDefinitionException</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4788">WW-4788</a>] - Parameters which are added via ServletDispatcherResult aren't availabe in #parameters</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4790">WW-4790</a>] - struts 2.5.10.1 upgrade cause more frequent garbage collection</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4794">WW-4794</a>] - Subreport call "Caused by: java.lang.ClassCastException: org.apache.struts2.views.jasperreports.ValueStackDataSource cannot be cast to java.util.Collection"</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4800">WW-4800</
 a>] - Aspects are not executed when chaining AOPed actions</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4801">WW-4801</a>] - Duplicate hidden input field checkboxListHandler</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4804">WW-4804</a>] - inputtransferselect does not auto-select its elements</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4810">WW-4810</a>] - Calling empty locale</li></ul><h2 id="VersionNotes2.5.12-Improvement">Improvement</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-1534">WW-1534</a>] - The value of checkbox getted in server-side is "false" when no any checkbox been selected.</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3924">WW-3924</a>] - refactor file upload framework</li><li>[<a shape="rect" class="external-link" href=
 "https://issues.apache.org/jira/browse/WW-3952">WW-3952</a>] - creditCard validator available in Struts 1 missing in Struts 2</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4149">WW-4149</a>] - No easy way to have an empty interceptor stack if have default stack</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4210">WW-4210</a>] - @TypeConversion converter attribut to class</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4714">WW-4714</a>] - Convert LocalizedTextUtil into a bean with default implementation</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4743">WW-4743</a>] - NPE in StrutsTilesContainerFactory when resource isn't found</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4744">WW-4744</a>] - AnnotationWorkflowInterceptor should supports non-public
  annotated methods</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4748">WW-4748</a>] - Upgrade commons-lang3 to 3.5</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4749">WW-4749</a>] - Buffer/Flush behaviour in FreemarkerResult</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4751">WW-4751</a>] - Struts2 should know and consider config time class of user's Actions</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4752">WW-4752</a>] - getters of exclude-sets in OgnlUtil should return immutable collections</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4753">WW-4753</a>] - Make DelegatingValidatorContext injectable</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4754">WW-4754</a>] - Mark site-graph plugin as deprec
 ated</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4756">WW-4756</a>] - Use TextProviderFactory instead of TextProvider as bean's dependency</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4757">WW-4757</a>] - Create LocaleProviderFactory and uses instead of LocaleProvider</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4761">WW-4761</a>] - Improve error logging in DefaultDispatcherErrorHandler</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4762">WW-4762</a>] - DefaultLocalizedTextProvider refactoring</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4764">WW-4764</a>] - Make jakarta-stream multipart parser more extensbile</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4767">WW-4767</a>] - Make Multipart parse
 rs more extensible</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4768">WW-4768</a>] - Add proper validation if request is a multipart request</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4769">WW-4769</a>] - Make SecurityMethodAccess excluded classes &amp; packages definitions immutable</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4771">WW-4771</a>] - minor typos in confluence page "security.html"</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4780">WW-4780</a>] - Upgrade to Log4j2 2.8.2</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4785">WW-4785</a>] - Allow disable file upload support via an configurable option</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4787">WW-4787</a>] - TestCase XWorkMapPro
 pertyAccessorTest should be moved to src/test/java</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4791">WW-4791</a>] - Stop using DefaultLocalizedTextProvider#localeFromString static util method</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4793">WW-4793</a>] - Don't add JBossFileManager as a possible FileManager when not on JBoss</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4795">WW-4795</a>] - There is no @LongRangeFieldValidator annotation to support LongRangeFieldValidator</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4805">WW-4805</a>] - At least a DoS attack is available for Spring secured actions</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4809">WW-4809</a>] - Upgrade to commons-lang 3.6</li><li>[<a shape="rect" class="external-link" href
 ="https://issues.apache.org/jira/browse/WW-4812">WW-4812</a>] - Update commons-fileupload</li></ul><h2 id="VersionNotes2.5.12-NewFeature">New Feature</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3399">WW-3399</a>] - JCR(JSR-170) Struts2 plugin</li></ul></li></ul><p>&#160;</p><p>Issue Detail</p><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311041&amp;version=12338701">JIRA Release Notes 2.5.12</a></li></ul><h2 id="VersionNotes2.5.12-IssueList">Issue List</h2><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12341147">Struts 2.5.12 DONE</a></li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12335667">Struts 2.5.x TODO</a></li></ul><h2 id="VersionNotes2.5.12-Otherresources">Other resources</h2><ul><li><a shape="rect" class="external-link" href="http://www.mail-archive.
 com/commits%40struts.apache.org/" rel="nofollow">Commit Logs</a></li><li><a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf?p=struts.git;a=tree;h=refs/heads/develop;hb=develop">Source Code Repository</a></li></ul><div><span style="font-size: 24.0px;line-height: 30.0px;"><br clear="none"></span></div><div><span style="font-size: 24.0px;line-height: 30.0px;background-color: rgb(245,245,245);"><br clear="none"></span></div></div>
+</div></div><h2 id="VersionNotes2.5.12-InternalChanges">Internal Changes</h2><ul style="list-style-type: square;"><li><img class="emoticon emoticon-warning" src="https://cwiki.apache.org/confluence/s/en_GB/5997/6f42626d00e36f53fe51440403446ca61552e2a2.1/_/images/icons/emoticons/warning.png" data-emoticon-name="warning" alt="(warning)">&#160;Possible DoS attack when using URLValidator, see&#160;<a shape="rect" href="s2-047.html">S2-047</a></li><li><img class="emoticon emoticon-warning" src="https://cwiki.apache.org/confluence/s/en_GB/5997/6f42626d00e36f53fe51440403446ca61552e2a2.1/_/images/icons/emoticons/warning.png" data-emoticon-name="warning" alt="(warning)">&#160;A DoS attack is available for Spring secured actions, see&#160;<a shape="rect" href="s2-049.html">S2-049</a></li></ul><ul style="list-style-type: square;"><li><h2 id="VersionNotes2.5.12-Bug">Bug</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3171">WW-3171</a>] - "double
 " and "Double" are not validated with the same decimal s&#233;parator</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3357">WW-3357</a>] - ognl.MethodFailedException when you do not enter a value for a field mapped to an int.</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3650">WW-3650</a>] - Double Value Conversion with requestLocale=de</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3659">WW-3659</a>] - strange behavior of s:a tag with s:include tag inside</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3905">WW-3905</a>] - The TextProvider injection in ActionSupport isn't quite integrated into the framework's core DI</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4105">WW-4105</a>] - Struts2 raise java.lang.ClassCastException when Result type is chain<
 /li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4472">WW-4472</a>] - @InputConfig annotation is not working when integrating with spring aop</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4528">WW-4528</a>] - ChainingInterceptor does not handle lists correctly for excludes and includes</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4578">WW-4578</a>] - Validators do not work for multiple values</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4581">WW-4581</a>] - BigDecimal are not converted according context locale</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4663">WW-4663</a>] - NullPointerException when displaying a form without action attribute</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4665">WW-466
 5</a>] - Struts2 JSR286 Portlet fileupload not working</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4694">WW-4694</a>] - AnnotationWorkflowInterceptor doesn't work with spring proxied action</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4736">WW-4736</a>] - Upgrade to Log4j2 version 2.8</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4737">WW-4737</a>] - Array-of-null parameters are converted to arrays containing "null"</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4739">WW-4739</a>] - &lt;s:reset&gt; tag does not properly interpret the attribute tabindex</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4740">WW-4740</a>] - NullPointer in com.opensymphony.xwork2.ActionSupport.getLocale</li><li>[<a shape="rect" class="external-link" href="https://issue
 s.apache.org/jira/browse/WW-4741">WW-4741</a>] - Http Sessions forcefully created for all requests using I18nInterceptor with default Storage value.</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4746">WW-4746</a>] - cssErrorClass attribute has no effect on label tag</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4747">WW-4747</a>] - s:file generates input tag with "value" attribute</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4750">WW-4750</a>] - Why JSONValidationInterceptor return Status Code 400 BAD_REQUEST instead of 200 SUCCESS</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4758">WW-4758</a>] - @autowired does not work since Struts 2.3.28.1</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4772">WW-4772</a>] - Convention Plugin can't use ${message
 }</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4773">WW-4773</a>] - Mixed content https to http when upgraded to 2.3.32 or 2.5.10.1</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4774">WW-4774</a>] - Upgrding Struts 2.3.1 to 2.5.10.1 - Redirect issues HTTPS to HTTP</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4775">WW-4775</a>] - Action class Attributes(value stack) is not getting populated through Ajax url request parms</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4784">WW-4784</a>] - &lt;s:url tag is not working after Struts 2.5.10.1 migration</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4786">WW-4786</a>] - Upgrade from struts2-tiles3-plugin to struts2-tiles-plugin gives a NoSuchDefinitionException</li><li>[<a shape="rect" class="external-li
 nk" href="https://issues.apache.org/jira/browse/WW-4788">WW-4788</a>] - Parameters which are added via ServletDispatcherResult aren't availabe in #parameters</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4790">WW-4790</a>] - struts 2.5.10.1 upgrade cause more frequent garbage collection</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4794">WW-4794</a>] - Subreport call "Caused by: java.lang.ClassCastException: org.apache.struts2.views.jasperreports.ValueStackDataSource cannot be cast to java.util.Collection"</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4800">WW-4800</a>] - Aspects are not executed when chaining AOPed actions</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4801">WW-4801</a>] - Duplicate hidden input field checkboxListHandler</li><li>[<a shape="rect" class="external-link" href="http
 s://issues.apache.org/jira/browse/WW-4804">WW-4804</a>] - inputtransferselect does not auto-select its elements</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4810">WW-4810</a>] - Calling empty locale</li></ul><h2 id="VersionNotes2.5.12-Improvement">Improvement</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-1534">WW-1534</a>] - The value of checkbox getted in server-side is "false" when no any checkbox been selected.</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3924">WW-3924</a>] - refactor file upload framework</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3952">WW-3952</a>] - creditCard validator available in Struts 1 missing in Struts 2</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4149">WW-4149</a>] - No easy way to have an empty intercepto
 r stack if have default stack</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4210">WW-4210</a>] - @TypeConversion converter attribut to class</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4714">WW-4714</a>] - Convert LocalizedTextUtil into a bean with default implementation</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4743">WW-4743</a>] - NPE in StrutsTilesContainerFactory when resource isn't found</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4744">WW-4744</a>] - AnnotationWorkflowInterceptor should supports non-public annotated methods</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4748">WW-4748</a>] - Upgrade commons-lang3 to 3.5</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4749">WW-4749</a>] - Bu
 ffer/Flush behaviour in FreemarkerResult</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4751">WW-4751</a>] - Struts2 should know and consider config time class of user's Actions</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4752">WW-4752</a>] - getters of exclude-sets in OgnlUtil should return immutable collections</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4753">WW-4753</a>] - Make DelegatingValidatorContext injectable</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4754">WW-4754</a>] - Mark site-graph plugin as deprecated</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4756">WW-4756</a>] - Use TextProviderFactory instead of TextProvider as bean's dependency</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/
 WW-4757">WW-4757</a>] - Create LocaleProviderFactory and uses instead of LocaleProvider</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4761">WW-4761</a>] - Improve error logging in DefaultDispatcherErrorHandler</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4762">WW-4762</a>] - DefaultLocalizedTextProvider refactoring</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4764">WW-4764</a>] - Make jakarta-stream multipart parser more extensbile</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4767">WW-4767</a>] - Make Multipart parsers more extensible</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4768">WW-4768</a>] - Add proper validation if request is a multipart request</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse
 /WW-4769">WW-4769</a>] - Make SecurityMethodAccess excluded classes &amp; packages definitions immutable</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4771">WW-4771</a>] - minor typos in confluence page "security.html"</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4780">WW-4780</a>] - Upgrade to Log4j2 2.8.2</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4785">WW-4785</a>] - Allow disable file upload support via an configurable option</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4787">WW-4787</a>] - TestCase XWorkMapPropertyAccessorTest should be moved to src/test/java</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4791">WW-4791</a>] - Stop using DefaultLocalizedTextProvider#localeFromString static util method</li><li>[<a shape="rect" class="extern
 al-link" href="https://issues.apache.org/jira/browse/WW-4793">WW-4793</a>] - Don't add JBossFileManager as a possible FileManager when not on JBoss</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4795">WW-4795</a>] - There is no @LongRangeFieldValidator annotation to support LongRangeFieldValidator</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4805">WW-4805</a>] - At least a DoS attack is available for Spring secured actions</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4809">WW-4809</a>] - Upgrade to commons-lang 3.6</li><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-4812">WW-4812</a>] - Update commons-fileupload</li></ul><h2 id="VersionNotes2.5.12-NewFeature">New Feature</h2><ul><li>[<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/WW-3399">WW-3399</a>] - JCR(JSR-170
 ) Struts2 plugin</li></ul></li></ul><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This release contains fixes related to <a shape="rect" href="s2-047.html">S2-047</a> and <a shape="rect" href="s2-049.html">S2-049</a>, please read them carefully!</p></div></div><p>&#160;</p><p>Issue Detail</p><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311041&amp;version=12338701">JIRA Release Notes 2.5.12</a></li></ul><h2 id="VersionNotes2.5.12-IssueList">Issue List</h2><ul><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12341147">Struts 2.5.12 DONE</a></li><li><a shape="rect" class="external-link" href="https://issues.apache.org/jira/issues/?filter=12335667">Struts 2.5.x TODO</a></li></ul><
 h2 id="VersionNotes2.5.12-Otherresources">Other resources</h2><ul><li><a shape="rect" class="external-link" href="http://www.mail-archive.com/commits%40struts.apache.org/" rel="nofollow">Commit Logs</a></li><li><a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf?p=struts.git;a=tree;h=refs/heads/develop;hb=develop">Source Code Repository</a></li></ul><div><span style="font-size: 24.0px;line-height: 30.0px;"><br clear="none"></span></div><div><span style="font-size: 24.0px;line-height: 30.0px;background-color: rgb(245,245,245);"><br clear="none"></span></div></div>
         </div>
 
         

Modified: websites/production/struts/content/download.html
==============================================================================
--- websites/production/struts/content/download.html (original)
+++ websites/production/struts/content/download.html Thu Jul 13 06:49:07 2017
@@ -181,27 +181,27 @@
 <h1>Full Releases</h1>
 <a class="anchor" name="struts-ga"></a>
 
-<a class="anchor" name="struts25101"></a>
-<h2>Struts 2.5.10.1</h2>
+<a class="anchor" name="struts2512"></a>
+<h2>Struts 2.5.12</h2>
 
 <p>
-  <a href="http://struts.apache.org/">Apache Struts 2.5.10.1</a> is an elegant, extensible
+  <a href="http://struts.apache.org/">Apache Struts 2.5.12</a> is an elegant, extensible
   framework for creating enterprise-ready Java web applications. It is available in a full distribution,
   or as separate library, source, example and documentation distributions.
-  Struts 2.5.10.1 is the "best available" version of Struts in the 2.5 series.
+  Struts 2.5.12 is the "best available" version of Struts in the 2.5 series.
 </p>
 
 <ul>
   <li>
-    <a href="http://struts.apache.org/docs/version-notes-25101.html">Version Notes</a>
+    <a href="http://struts.apache.org/docs/version-notes-2512.html">Version Notes</a>
   </li>
 
   <li>Full Distribution:
     <ul>
       <li>
-        <a href="[preferred]struts/2.5.10.1/struts-2.5.10.1-all.zip">struts-2.5.10.1-all.zip</a> (65MB)
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-all.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-all.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.5.12/struts-2.5.12-all.zip">struts-2.5.12-all.zip</a> (65MB)
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-all.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-all.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -209,9 +209,9 @@
   <li>Example Applications:
     <ul>
       <li>
-        <a href="[preferred]struts/2.5.10.1/struts-2.5.10.1-apps.zip">struts-2.5.10.1-apps.zip</a> (35MB)
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-apps.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-apps.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.5.12/struts-2.5.12-apps.zip">struts-2.5.12-apps.zip</a> (35MB)
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-apps.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-apps.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -219,9 +219,9 @@
   <li>Essential Dependencies Only:
     <ul>
       <li>
-        <a href="[preferred]struts/2.5.10.1/struts-2.5.10.1-min-lib.zip">struts-2.5.10.1-min-lib.zip</a> (4MB)
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-min-lib.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-min-lib.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.5.12/struts-2.5.12-min-lib.zip">struts-2.5.12-min-lib.zip</a> (4MB)
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-min-lib.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-min-lib.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -229,9 +229,9 @@
   <li>All Dependencies:
     <ul>
       <li>
-        <a href="[preferred]struts/2.5.10.1/struts-2.5.10.1-lib.zip">struts-2.5.10.1-lib.zip</a> (19MB)
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-lib.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-lib.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.5.12/struts-2.5.12-lib.zip">struts-2.5.12-lib.zip</a> (19MB)
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-lib.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-lib.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -239,9 +239,9 @@
   <li>Documentation:
     <ul>
       <li>
-        <a href="[preferred]struts/2.5.10.1/struts-2.5.10.1-docs.zip">struts-2.5.10.1-docs.zip</a> (13MB)
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-docs.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-docs.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.5.12/struts-2.5.12-docs.zip">struts-2.5.12-docs.zip</a> (13MB)
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-docs.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-docs.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -249,9 +249,9 @@
   <li>Source:
     <ul>
       <li>
-        <a href="[preferred]struts/2.5.10.1/struts-2.5.10.1-src.zip">struts-2.5.10.1-src.zip</a> (7MB)
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-src.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.5.10.1/struts-2.5.10.1-src.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.5.12/struts-2.5.12-src.zip">struts-2.5.12-src.zip</a> (7MB)
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-src.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.5.12/struts-2.5.12-src.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -259,7 +259,7 @@
 </ul>
 
 <a class="anchor" name="struts-23x"></a>
-<h2>Struts 2.3.32</h2>
+<h2>Struts 2.3.33</h2>
 
 <ul>
   <li>
@@ -269,9 +269,9 @@
   <li>Full Distribution:
     <ul>
       <li>
-        <a href="[preferred]struts/2.3.32/struts-2.3.32-all.zip">struts-2.3.32-all.zip</a> (65MB)
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-all.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-all.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.3.33/struts-2.3.33-all.zip">struts-2.3.33-all.zip</a> (65MB)
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-all.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-all.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -279,9 +279,9 @@
   <li>Example Applications:
     <ul>
       <li>
-        <a href="[preferred]struts/2.3.32/struts-2.3.32-apps.zip">struts-2.3.32-apps.zip</a> (35MB)
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-apps.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-apps.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.3.33/struts-2.3.33-apps.zip">struts-2.3.33-apps.zip</a> (35MB)
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-apps.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-apps.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -289,9 +289,9 @@
   <li>Essential Dependencies Only:
     <ul>
       <li>
-        <a href="[preferred]struts/2.3.32/struts-2.3.32-min-lib.zip">struts-2.3.32-min-lib.zip</a> (4MB)
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-min-lib.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-min-lib.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.3.33/struts-2.3.33-min-lib.zip">struts-2.3.33-min-lib.zip</a> (4MB)
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-min-lib.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-min-lib.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -299,9 +299,9 @@
   <li>All Dependencies:
     <ul>
       <li>
-        <a href="[preferred]struts/2.3.32/struts-2.3.32-lib.zip">struts-2.3.32-lib.zip</a> (19MB)
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-lib.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-lib.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.3.33/struts-2.3.33-lib.zip">struts-2.3.33-lib.zip</a> (19MB)
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-lib.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-lib.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -309,9 +309,9 @@
   <li>Documentation:
     <ul>
       <li>
-        <a href="[preferred]struts/2.3.32/struts-2.3.32-docs.zip">struts-2.3.32-docs.zip</a> (13MB)
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-docs.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-docs.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.3.33/struts-2.3.33-docs.zip">struts-2.3.33-docs.zip</a> (13MB)
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-docs.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-docs.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>
@@ -319,9 +319,9 @@
   <li>Source:
     <ul>
       <li>
-        <a href="[preferred]struts/2.3.32/struts-2.3.32-src.zip">struts-2.3.32-src.zip</a> (7MB)
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-src.zip.asc">PGP</a>]
-        [<a href="http://www.apache.org/dist/struts/2.3.32/struts-2.3.32-src.zip.md5">MD5</a>]
+        <a href="[preferred]struts/2.3.33/struts-2.3.33-src.zip">struts-2.3.33-src.zip</a> (7MB)
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-src.zip.asc">PGP</a>]
+        [<a href="http://www.apache.org/dist/struts/2.3.33/struts-2.3.33-src.zip.md5">MD5</a>]
       </li>
     </ul>
   </li>

Modified: websites/production/struts/content/downloads.html
==============================================================================
--- websites/production/struts/content/downloads.html (original)
+++ websites/production/struts/content/downloads.html Thu Jul 13 06:49:07 2017
@@ -141,7 +141,7 @@
     <ul>
       <li>
         <a href="http://struts.apache.org/download.cgi#struts-ga">
-          Struts 2.5.10.1
+          Struts 2.5.12
         </a> ("best available")
       </li>
     </ul>
@@ -226,10 +226,37 @@
   <tbody>
   <tr>
     <td class="no-wrap">
+      Struts 2.5.10.1
+    </td>
+    <td class="no-wrap">7 March 2017</td>
+    <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>
+    </td>
+    <td>
+      <a href="/docs/version-notes-25101.html">Version notes</a>
+    </td>
+  </tr>
+  <tr>
+    <td class="no-wrap">
+      Struts 2.3.32
+    </td>
+    <td class="no-wrap">18 Oct 2016</td>
+    <td>
+      <a href="/docs/s2-045.html">S2-045</a>
+    </td>
+    <td>
+      <a href="/docs/version-notes-2331.html">Version notes</a>
+    </td>
+  </tr>
+  <tr>
+    <td class="no-wrap">
       Struts 2.5.10
     </td>
     <td class="no-wrap">3 February 2017</td>
     <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>,
       <a href="/docs/s2-045.html">S2-045</a>
     </td>
     <td>
@@ -242,6 +269,8 @@
     </td>
     <td class="no-wrap">19 December 2016</td>
     <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>,
       <a href="/docs/s2-045.html">S2-045</a>
     </td>
     <td>
@@ -254,6 +283,8 @@
     </td>
     <td class="no-wrap">21 October 2016</td>
     <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>,
       <a href="/docs/s2-045.html">S2-045</a>,
       <a href="/docs/s2-044.html">S2-044</a>
     </td>
@@ -279,6 +310,8 @@
     </td>
     <td class="no-wrap">7 Jul 2016</td>
     <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>,
       <a href="/docs/s2-045.html">S2-045</a>,
       <a href="/docs/s2-044.html">S2-044</a>,
       <a href="/docs/s2-043.html">S2-043</a>
@@ -307,6 +340,8 @@
     </td>
     <td class="no-wrap">18 Jun 2016</td>
     <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>,
       <a href="/docs/s2-045.html">S2-045</a>,
       <a href="/docs/s2-044.html">S2-044</a>,
       <a href="/docs/s2-043.html">S2-043</a>
@@ -321,6 +356,8 @@
     </td>
     <td class="no-wrap">9 May 2016</td>
     <td>
+      <a href="/docs/s2-047.html">S2-049</a>,
+      <a href="/docs/s2-047.html">S2-047</a>,
       <a href="/docs/s2-045.html">S2-045</a>,
       <a href="/docs/s2-044.html">S2-044</a>,
       <a href="/docs/s2-043.html">S2-043</a>,

Modified: websites/production/struts/content/index.html
==============================================================================
--- websites/production/struts/content/index.html (original)
+++ websites/production/struts/content/index.html Thu Jul 13 06:49:07 2017
@@ -128,7 +128,7 @@
       extensible using a plugin architecture, and ships with plugins to support
       REST, AJAX and JSON.
     </p>
-    <a href="download.cgi#struts25101" class="btn btn-primary btn-large">
+    <a href="download.cgi#struts2512" class="btn btn-primary btn-large">
       <img src="img/download-icon.svg"> Download
     </a>
     <a href="primer.html" class="btn btn-info btn-large">
@@ -148,12 +148,12 @@
         </p>
       </div>
       <div class="column col-md-4">
-        <h2>Apache Struts 2.5.10.1 GA</h2>
+        <h2>Apache Struts 2.5.12 GA</h2>
         <p>
-          Apache Struts 2.5.10.1 GA has been released<br/>on 7 March 2017.
+          Apache Struts 2.5.12 GA has been released<br/>on 17 July 2017.
         </p>
-        Read more in <a href="announce.html#a20170307">Announcement</a> or in
-        <a href="/docs/version-notes-25101.html">Version notes</a>
+        Read more in <a href="announce.html#a20170717">Announcement</a> or in
+        <a href="/docs/version-notes-2512.html">Version notes</a>
       </div>
       <div class="column col-md-4">
         <h2>Apache Struts 2.3.32 GA</h2>