Author: lukaszlenart
Date: Sun Dec  7 14:57:22 2014
New Revision: 931772

Log:
Updates production

Added:
    websites/production/struts/content/docs/s2-023.html
Modified:
    
websites/production/struts/content/docs/building-struts-2-normal-release.html
    websites/production/struts/content/docs/migration-guide.html
    websites/production/struts/content/docs/security-bulletins.html
    websites/production/struts/content/docs/security.html
    websites/production/struts/content/docs/struts-next.html
    websites/production/struts/content/docs/version-notes-2320.html

Modified: 
websites/production/struts/content/docs/building-struts-2-normal-release.html
==============================================================================
--- 
websites/production/struts/content/docs/building-struts-2-normal-release.html 
(original)
+++ 
websites/production/struts/content/docs/building-struts-2-normal-release.html 
Sun Dec  7 14:57:22 2014
@@ -139,11 +139,11 @@ under the License.
     <div class="pagecontent">
         <div class="wiki-content">
             <div id="ConfluenceContent"><h1 
id="BuildingStruts2-Normalrelease-Content">Content</h1><p><style 
type="text/css">/*<![CDATA[*/
-div.rbtoc1416562007401 {padding: 0px;}
-div.rbtoc1416562007401 ul {list-style: none;margin-left: 0px;}
-div.rbtoc1416562007401 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1417964184014 {padding: 0px;}
+div.rbtoc1417964184014 ul {list-style: none;margin-left: 0px;}
+div.rbtoc1417964184014 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1416562007401">
+/*]]>*/</style></p><div class="toc-macro rbtoc1417964184014">
 <ul class="toc-indentation"><li><span class="TOCOutline">1</span> <a 
shape="rect" href="#BuildingStruts2-Normalrelease-Gettingready">Getting 
ready</a></li><li><span class="TOCOutline">2</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-UpdateDraftDocswhenneeded">Update Draft 
Docs when needed</a></li><li><span class="TOCOutline">3</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Besureyourlocalcopyisup-to-date">Be sure 
your local copy is up-to-date</a></li><li><span class="TOCOutline">4</span> <a 
shape="rect" href="#BuildingStruts2-Normalrelease-Createareleasebranch">Create 
a release branch</a></li><li><span class="TOCOutline">5</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Preparerelease">Prepare 
release</a></li><li><span class="TOCOutline">6</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Performtherelease">Perform the 
release</a></li><li><span class="TOCOutline">7</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Movetheasse
 mblies">Move the assemblies</a></li><li><span class="TOCOutline">8</span> <a 
shape="rect" 
href="#BuildingStruts2-Normalrelease-Announceavailability">Announce 
availability</a></li><li><span class="TOCOutline">9</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Cleanuprepository">Clean up 
repository</a></li><li><span class="TOCOutline">10</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Voteonit">Vote on it</a></li><li><span 
class="TOCOutline">11</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Copyfiles">Copy files</a></li><li><span 
class="TOCOutline">12</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Promoterelease">Promote 
release</a></li><li><span class="TOCOutline">13</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Cleanupoldreleases">Clean up old 
releases</a></li><li><span class="TOCOutline">14</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Waitforrsync">Wait for 
rsync</a></li><li><span class="TOCOutline">15</s
 pan> <a shape="rect" href="#BuildingStruts2-Normalrelease-Updatesite">Update 
site</a></li><li><span class="TOCOutline">16</span> <a shape="rect" 
href="#BuildingStruts2-Normalrelease-Redeploythedraftdocs(Optional)">Redeploy 
the draft docs (Optional)</a></li><li><span class="TOCOutline">17</span> <a 
shape="rect" href="#BuildingStruts2-Normalrelease-Postannouncements">Post 
announcements</a></li></ul>
 </div><h2 id="BuildingStruts2-Normalrelease-BuildingSteps(Struts)">Building 
Steps (Struts)</h2><h3 id="BuildingStruts2-Normalrelease-Gettingready">Getting 
ready</h3><ol><li>Create an "Struts 2.x.y omnibus ticket" ticket in JIRA to 
refer to in upcoming release related commit comments and for general 
documentation purposes. Mark it with priority "Blocker".</li><li>Switch to 
branch&#160;<code>develop</code></li><li>Ensure that the master POM and Struts 
Annotations have current releases</li><li>Review JIRA for any issues without a 
fix version set, and for any issues that should be resolved for the pending 
release.</li><li>Ensure that there are no repositories or pluginRepositories 
listed in the poms.</li><li>If you have committed all changes regarding the 
release process, close the omnibus ticket as it is the last open ticket for the 
upcoming release</li><li>Release the upcoming version in JIRA (under 
Administration/Manage Releases) and tag the release date</li><li>Add next 
milestone ve
 rsion to the JIRA roadmap</li><li>Create DONE and TODO filters for the new 
version, share with all, and remove obsolete TODO filter</li><li>Create a new 
Version Notes page in Confluence, link from <a shape="rect" 
href="migration-guide.html">Migration Guide</a>, and link to prior release page 
and JIRA DONE filters of the version to release</li><li>Export wiki pages and 
put them under&#160;<code>/docs</code></li></ol><h3 
id="BuildingStruts2-Normalrelease-UpdateDraftDocswhenneeded">Update Draft Docs 
when needed</h3><p>Checkout&#160;<code>struts-site</code> project (see details 
at the bottom of this page) and perform export:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" 
type="syntaxhighlighter"><![CDATA[cd struts-site
@@ -194,7 +194,6 @@ echo &quot;Creating working dir $VERSION
 mkdir $VERSION
 cd $VERSION
 
-
 # get the distro
 echo &quot;Getting distro $VERSION&quot;
 wget -erobots=off -nv  -l 1 --accept=zip,md5,sha1,asc -r 
--no-check-certificate -nd -nH 
https://repository.apache.org/content/groups/staging/org/apache/struts/struts2-assembly/$VERSION
@@ -245,17 +244,10 @@ git branch -d release/X.X.X.X]]></script
                             <p>Do not remove the tag! It clearly indicates 
what was planned and it can be used as a history marker. Always used the next 
version number, do not redeploy the same version as it breaks Maven's policy 
and you will have to manually clean up Maven repository.</p>
                     </div>
     </div>
-<h3 id="BuildingStruts2-Normalrelease-Voteonit">Vote on it</h3><p>Post a 
release/quality vote to the dev list (and <strong>only</strong> the dev list). 
The example mail is on <a shape="rect" href="sample-announcements.html">Sample 
announcements</a> page. <br clear="none"> If the vote result is for an ASF 
release (i.e. not test build), update site, announce. If the vote result is for 
GA, push to central.</p><h3 id="BuildingStruts2-Normalrelease-Copyfiles">Copy 
files</h3><p>After the vote, if the distribution is being mirrored (there was a 
favourable release vote) copy the Sources and Binaries:</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false" 
type="syntaxhighlighter"><![CDATA[ssh people.apache.org
-cd /www/people.apache.org/builds/struts/$VERSION
-cp struts-$VERSION-src.*  /www/www.apache.org/dist/struts/source
-cp struts-$VERSION-docs.*  /www/www.apache.org/dist/struts/documentation
-cp struts-$VERSION-lib.* /www/www.apache.org/dist/struts/library
-cp struts-$VERSION-apps.* /www/www.apache.org/dist/struts/examples
-cp struts-$VERSION-all.* /www/www.apache.org/dist/struts/binaries   
]]></script>
-</div></div><h3 id="BuildingStruts2-Normalrelease-Promoterelease">Promote 
release</h3><p>Log in again to <a shape="rect" class="external-link" 
href="http://repository.apache.org/";>Nexus</a> and <strong>release</strong> the 
repository, it will be automatically replicated across Maven Repositories<br 
clear="none"> See <a shape="rect" class="external-link" 
href="http://maven.apache.org/developers/release/apache-release.html";>Releasing 
a Maven-based project</a> for further details.</p><h3 
id="BuildingStruts2-Normalrelease-Cleanupoldreleases">Clean up old 
releases</h3><p>Remove the old files from under 
<code>/www/www.apache.org/dist/struts/</code> to synchronise only the latest 
version with peers. All the files from <code>/www/www.apache.org/dist/</code> 
are always mirrored to <code><a shape="rect" class="external-link" 
href="http://archive.apache.org/dist/struts/";>http://archive.apache.org/dist/struts/</a></code>.
 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 {} \;
+<h3 id="BuildingStruts2-Normalrelease-Voteonit">Vote on it</h3><p>Post a 
release/quality vote to the dev list (and <strong>only</strong> the dev list). 
The example mail is on <a shape="rect" href="sample-announcements.html">Sample 
announcements</a> page. <br clear="none"> If the vote result is for an ASF 
release (i.e. not test build), update site, announce. If the vote result is for 
GA, push to central.</p><h3 id="BuildingStruts2-Normalrelease-Copyfiles">Copy 
files</h3><p>After the vote, if the distribution is being mirrored (there was a 
favourable release vote) move all the artefa<span style="line-height: 
1.4285715;">cts from <code>dev</code> folder into <code>release</code> 
folder:</span></p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false" 
type="syntaxhighlighter"><![CDATA[svn mv 
https://dist.apache.org/repos/dist/dev/struts/$VERSION/ 
https://dist.apache.org/repos/dist/release/struts/  ]]></script>
+</div></div><h3 id="BuildingStruts2-Normalrelease-Promoterelease">Promote 
release</h3><p>Log in again to <a shape="rect" class="external-link" 
href="http://repository.apache.org/";>Nexus</a> and <strong>release</strong> the 
repository, it will be automatically replicated across Maven Repositories<br 
clear="none"> See <a shape="rect" class="external-link" 
href="http://maven.apache.org/developers/release/apache-release.html";>Releasing 
a Maven-based project</a> for further details.</p><h3 
id="BuildingStruts2-Normalrelease-Cleanupoldreleases">Clean up old 
releases</h3><p>Remove the old files from under <a shape="rect" 
class="external-link" 
href="https://dist.apache.org/repos/dist/release/struts/";>https://dist.apache.org/repos/dist/release/struts/</a>&#160;to
 synchronise only the latest version with peers. All the files from <a 
shape="rect" class="external-link" 
href="https://dist.apache.org/repos/dist/release/struts/";>https://dist.apache.org/repos/dist/release/struts/</a>&#160;are
 always
  mirrored to <a shape="rect" class="external-link" 
href="http://archive.apache.org/dist/struts/";>http://archive.apache.org/dist/struts/</a>.&#160;You
 can use the below command:</p><div class="preformatted panel" 
style="border-width: 1px;"><div class="preformattedContent panelContent">
+<pre>svn del https://dist.apache.org/repos/dist/release/struts/2.3.x/
 </pre>
 </div></div><p>where <code>x</code> is the previous version to remove (or one 
more previous to keep current and one version back).</p><h3 
id="BuildingStruts2-Normalrelease-Waitforrsync">Wait for rsync</h3><p>Wait 24 
hours before proceeding.</p><h3 
id="BuildingStruts2-Normalrelease-Updatesite"><span style="line-height: 
1.5625;">Update site</span></h3><ul><li><p>Check out site src code</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" 
type="syntaxhighlighter"><![CDATA[svn co 
https://svn.apache.org/repos/asf/struts/site/ struts-site

Modified: websites/production/struts/content/docs/migration-guide.html
==============================================================================
--- websites/production/struts/content/docs/migration-guide.html (original)
+++ websites/production/struts/content/docs/migration-guide.html Sun Dec  7 
14:57:22 2014
@@ -125,7 +125,7 @@ under the License.
 
     <div class="pagecontent">
         <div class="wiki-content">
-            <div id="ConfluenceContent"><p>Getting here from there.</p><h3 
id="MigrationGuide-VersionNotes2.3.x">Version Notes 2.3.x</h3><ul><li><p><a 
shape="rect" href="version-notes-2320.html">Version Notes 
2.3.20</a></p></li><li><p><a shape="rect" 
href="version-notes-23163.html">Version Notes 2.3.16.3</a></p></li><li><a 
shape="rect" href="version-notes-23162.html">Version Notes 
2.3.16.2</a></li><li><a shape="rect" href="version-notes-2316.html">Version 
Notes 2.3.16.1</a></li><li><a shape="rect" 
href="version-notes-2316.html">Version Notes 2.3.16</a></li><li><a shape="rect" 
href="version-notes-23153.html">Version Notes 2.3.15.3</a></li><li><a 
shape="rect" href="version-notes-23152.html">Version Notes 
2.3.15.2</a></li><li><a shape="rect" href="version-notes-23151.html">Version 
Notes 2.3.15.1</a></li><li><a shape="rect" 
href="version-notes-2315.html">Version Notes 2.3.15</a></li><li><a shape="rect" 
href="version-notes-23143.html">Version Notes 2.3.14.3</a></li><li><a 
shape="rect" hr
 ef="version-notes-23142.html">Version Notes 2.3.14.2</a></li><li><a 
shape="rect" href="version-notes-23141.html">Version Notes 
2.3.14.1</a></li><li><a shape="rect" href="version-notes-2314.html">Version 
Notes 2.3.14</a></li><li><a shape="rect" 
href="version-notes-23120.html">Version Notes 2.3.12.0</a></li><li><a 
shape="rect" href="version-notes-238.html">Version Notes 2.3.8</a></li><li><a 
shape="rect" href="version-notes-237.html">Version Notes 2.3.7</a></li><li><a 
shape="rect" href="version-notes-2341.html">Version Notes 
2.3.4.1</a></li><li><a shape="rect" href="version-notes-234.html">Version Notes 
2.3.4</a></li><li><a shape="rect" href="version-notes-233.html">Version Notes 
2.3.3</a></li><li><a shape="rect" href="version-notes-2312.html">Version Notes 
2.3.1.2</a></li><li><a shape="rect" href="version-notes-2311.html">Version 
Notes 2.3.1.1</a></li><li><a shape="rect" href="version-notes-231.html">Version 
Notes 2.3.1</a></li></ul><h3 id="MigrationGuide-VersionNotes2.2.x">Version No
 tes 2.2.x</h3><ul><li><a shape="rect" href="version-notes-2231.html">Version 
Notes 2.2.3.1</a></li><li><a shape="rect" href="version-notes-223.html">Version 
Notes 2.2.3</a></li><li><a shape="rect" href="version-notes-2211.html">Version 
Notes 2.2.1.1</a></li><li><a shape="rect" href="version-notes-221.html">Version 
Notes 2.2.1</a></li></ul><h3 id="MigrationGuide-VersionNotes2.1.x">Version 
Notes 2.1.x</h3><ul><li><a shape="rect" href="version-notes-2181.html">Version 
Notes 2.1.8.1</a></li><li><a shape="rect" href="version-notes-218.html">Version 
Notes 2.1.8</a></li><li><a shape="rect" href="version-notes-216.html">Version 
Notes 2.1.6</a></li><li><a shape="rect" href="version-notes-215.html">Version 
Notes 2.1.5</a></li><li><a shape="rect" href="version-notes-214.html">Version 
Notes 2.1.4</a></li><li><a shape="rect" href="version-notes-213.html">Version 
Notes 2.1.3</a></li><li><a shape="rect" href="version-notes-212.html">Version 
Notes 2.1.2</a></li><li><a shape="rect" href="version-not
 es-211.html">Version Notes 2.1.1</a></li><li><a shape="rect" 
href="version-notes-210.html">Version Notes 2.1.0</a></li></ul><h3 
id="MigrationGuide-ReleaseNotes2.0.x">Release Notes 2.0.x</h3><ul><li><a 
shape="rect" href="release-notes-2014.html">Release Notes 2.0.14</a></li><li><a 
shape="rect" href="release-notes-2013.html">Release Notes 2.0.13</a></li><li><a 
shape="rect" href="release-notes-2012.html">Release Notes 2.0.12</a></li><li><a 
shape="rect" href="release-notes-20112.html">Release Notes 
2.0.11.2</a></li><li><a shape="rect" href="release-notes-20111.html">Release 
Notes 2.0.11.1</a></li><li><a shape="rect" 
href="release-notes-2011.html">Release Notes 2.0.11</a></li><li><a shape="rect" 
href="release-notes-2010.html">Release Notes 2.0.10</a></li><li><a shape="rect" 
href="release-notes-209.html">Release Notes 2.0.9</a></li><li><a shape="rect" 
href="release-notes-208.html">Release Notes 2.0.8</a></li><li><a shape="rect" 
href="release-notes-207.html">Release Notes 2.0.7</a></li><li
 ><a shape="rect" href="release-notes-206.html">Release Notes 
 >2.0.6</a></li><li><a shape="rect" href="release-notes-205.html">Release Notes 
 >2.0.5</a></li><li><a shape="rect" href="release-notes-204.html">Release Notes 
 >2.0.4</a></li><li><a shape="rect" href="release-notes-203.html">Release Notes 
 >2.0.3</a></li><li><a shape="rect" href="release-notes-202.html">Release Notes 
 >2.0.2</a></li><li><a shape="rect" href="release-notes-201.html">Release Notes 
 >2.0.1</a></li><li><a shape="rect" href="release-notes-200.html">Release Notes 
 >2.0.0</a></li></ul><h3 id="MigrationGuide-Struts1toStruts2">Struts 1 to 
 >Struts 2</h3><div class="table-wrap"><table 
 >class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
 >class="confluenceTh"><p><a shape="rect" 
 >href="comparing-struts-1-and-2.html">Comparing Struts 1 and 2</a></p></th><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p>How are Struts 1 and Struts 2 
 >alike? How are they different?</p></td></tr><tr><th colspan="1" rowspan="1" 
 >class="confluence
 Th"><p><a shape="rect" href="struts-1-solutions.html">Struts 1 
Solutions</a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Various issues (and hopefully their solutions!) 
encountered during migrations to Struts 2.</p></td></tr><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p><a shape="rect" 
href="migration-strategies.html">Migration Strategies</a></p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Steps and overall strategies 
for migrating Struts 1 applications to Struts 2.</p></td></tr><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p><a shape="rect" 
href="migration-tools.html">Migration Tools</a></p></th><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Development tools to help aid the migration 
process.</p></td></tr></tbody></table></div><h4 
id="MigrationGuide-Tutorials">Tutorials</h4><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shape="rect" class="external-link" hre
 f="http://www.infoq.com/news/migrating-struts2"; rel="nofollow">Migrating 
Applications to Struts 2 </a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>A three-part series by Ian Roughley (Sep 
2006)</p></td></tr></tbody></table></div><h4 
id="MigrationGuide-Roadmap">Roadmap</h4><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shape="rect" class="external-link" 
href="http://struts.apache.org/roadmap.html#new";>Roadmap FAQ</a></p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p>What's in store for Struts 
2?</p></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p><a 
shape="rect" class="external-link" 
href="http://www.oreillynet.com/onjava/blog/2006/10/my_history_of_struts_2.html";
 rel="nofollow">A History of Struts 2</a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Don Brown's summary of 
events</p></td></tr></tbody></table></div><h3 
id="MigrationGuide-Webwork2.2toStruts2"
 >Webwork 2.2 to Struts 2</h3><div class="table-wrap"><table 
 >class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
 >class="confluenceTh"><p><a shape="rect" 
 >href="key-changes-from-webwork-2.html">Key Changes From WebWork 
 >2</a></p></th><td colspan="1" rowspan="1" class="confluenceTd"><p>What has 
 >been removed or changed from WebWork 2.2 to Struts 2</p></td></tr><tr><th 
 >colspan="1" rowspan="1" class="confluenceTh"><p><a shape="rect" 
 >href="webwork-2-migration-strategies.html">WebWork 2 Migration 
 >Strategies</a></p></th><td colspan="1" rowspan="1" 
 >class="confluenceTd"><p>Steps and overall strategies for migrating WebWork 2 
 >applications to Struts 2.</p></td></tr></tbody></table></div><h2 
 >id="MigrationGuide-FAQs">FAQs</h2><ul><li><a shape="rect" 
 >href="where-do-we-get-the-latest-version-the-framework.html">Where do we get 
 >the latest version the framework</a>?</li><li><a shape="rect" 
 >href="what-are-some-of-the-frameworks-best-features.html">What are some of 
 >the framework's best features
 </a>?</li><li><a shape="rect" href="what-is-the-actioncontext.html">What is 
the ActionContext?</a></li></ul><h2 id="MigrationGuide-Next:">Next: <a 
shape="rect" href="contributors-guide.html">Contributors Guide</a></h2></div>
+            <div id="ConfluenceContent"><p>Getting here from there.</p><h3 
id="MigrationGuide-VersionNotes2.3.x">Version Notes 2.3.x</h3><ul><li><a 
shape="rect" href="version-notes-2320.html">Version Notes 2.3.20</a></li><li><a 
shape="rect" href="version-notes-23163.html">Version Notes 
2.3.16.3</a></li><li><a shape="rect" href="version-notes-23162.html">Version 
Notes 2.3.16.2</a></li><li><a shape="rect" 
href="version-notes-2316.html">Version Notes 2.3.16.1</a></li><li><a 
shape="rect" href="version-notes-2316.html">Version Notes 2.3.16</a></li><li><a 
shape="rect" href="version-notes-23153.html">Version Notes 
2.3.15.3</a></li><li><a shape="rect" href="version-notes-23152.html">Version 
Notes 2.3.15.2</a></li><li><a shape="rect" 
href="version-notes-23151.html">Version Notes 2.3.15.1</a></li><li><a 
shape="rect" href="version-notes-2315.html">Version Notes 2.3.15</a></li><li><a 
shape="rect" href="version-notes-23143.html">Version Notes 
2.3.14.3</a></li><li><a shape="rect" href="version-no
 tes-23142.html">Version Notes 2.3.14.2</a></li><li><a shape="rect" 
href="version-notes-23141.html">Version Notes 2.3.14.1</a></li><li><a 
shape="rect" href="version-notes-2314.html">Version Notes 2.3.14</a></li><li><a 
shape="rect" href="version-notes-23120.html">Version Notes 
2.3.12.0</a></li><li><a shape="rect" href="version-notes-238.html">Version 
Notes 2.3.8</a></li><li><a shape="rect" href="version-notes-237.html">Version 
Notes 2.3.7</a></li><li><a shape="rect" href="version-notes-2341.html">Version 
Notes 2.3.4.1</a></li><li><a shape="rect" href="version-notes-234.html">Version 
Notes 2.3.4</a></li><li><a shape="rect" href="version-notes-233.html">Version 
Notes 2.3.3</a></li><li><a shape="rect" href="version-notes-2312.html">Version 
Notes 2.3.1.2</a></li><li><a shape="rect" 
href="version-notes-2311.html">Version Notes 2.3.1.1</a></li><li><a 
shape="rect" href="version-notes-231.html">Version Notes 2.3.1</a></li></ul><h3 
id="MigrationGuide-VersionNotes2.2.x">Version Notes 2.2.x</h3>
 <ul><li><a shape="rect" href="version-notes-2231.html">Version Notes 
2.2.3.1</a></li><li><a shape="rect" href="version-notes-223.html">Version Notes 
2.2.3</a></li><li><a shape="rect" href="version-notes-2211.html">Version Notes 
2.2.1.1</a></li><li><a shape="rect" href="version-notes-221.html">Version Notes 
2.2.1</a></li></ul><h3 id="MigrationGuide-VersionNotes2.1.x">Version Notes 
2.1.x</h3><ul><li><a shape="rect" href="version-notes-2181.html">Version Notes 
2.1.8.1</a></li><li><a shape="rect" href="version-notes-218.html">Version Notes 
2.1.8</a></li><li><a shape="rect" href="version-notes-216.html">Version Notes 
2.1.6</a></li><li><a shape="rect" href="version-notes-215.html">Version Notes 
2.1.5</a></li><li><a shape="rect" href="version-notes-214.html">Version Notes 
2.1.4</a></li><li><a shape="rect" href="version-notes-213.html">Version Notes 
2.1.3</a></li><li><a shape="rect" href="version-notes-212.html">Version Notes 
2.1.2</a></li><li><a shape="rect" href="version-notes-211.html">V
 ersion Notes 2.1.1</a></li><li><a shape="rect" 
href="version-notes-210.html">Version Notes 2.1.0</a></li></ul><h3 
id="MigrationGuide-ReleaseNotes2.0.x">Release Notes 2.0.x</h3><ul><li><a 
shape="rect" href="release-notes-2014.html">Release Notes 2.0.14</a></li><li><a 
shape="rect" href="release-notes-2013.html">Release Notes 2.0.13</a></li><li><a 
shape="rect" href="release-notes-2012.html">Release Notes 2.0.12</a></li><li><a 
shape="rect" href="release-notes-20112.html">Release Notes 
2.0.11.2</a></li><li><a shape="rect" href="release-notes-20111.html">Release 
Notes 2.0.11.1</a></li><li><a shape="rect" 
href="release-notes-2011.html">Release Notes 2.0.11</a></li><li><a shape="rect" 
href="release-notes-2010.html">Release Notes 2.0.10</a></li><li><a shape="rect" 
href="release-notes-209.html">Release Notes 2.0.9</a></li><li><a shape="rect" 
href="release-notes-208.html">Release Notes 2.0.8</a></li><li><a shape="rect" 
href="release-notes-207.html">Release Notes 2.0.7</a></li><li><a shape="rec
 t" href="release-notes-206.html">Release Notes 2.0.6</a></li><li><a 
shape="rect" href="release-notes-205.html">Release Notes 2.0.5</a></li><li><a 
shape="rect" href="release-notes-204.html">Release Notes 2.0.4</a></li><li><a 
shape="rect" href="release-notes-203.html">Release Notes 2.0.3</a></li><li><a 
shape="rect" href="release-notes-202.html">Release Notes 2.0.2</a></li><li><a 
shape="rect" href="release-notes-201.html">Release Notes 2.0.1</a></li><li><a 
shape="rect" href="release-notes-200.html">Release Notes 2.0.0</a></li></ul><h3 
id="MigrationGuide-Struts1toStruts2">Struts 1 to Struts 2</h3><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p><a shape="rect" 
href="comparing-struts-1-and-2.html">Comparing Struts 1 and 2</a></p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p>How are Struts 1 and Struts 2 
alike? How are they different?</p></td></tr><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shap
 e="rect" href="struts-1-solutions.html">Struts 1 Solutions</a></p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Various issues (and hopefully 
their solutions!) encountered during migrations to Struts 
2.</p></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p><a 
shape="rect" href="migration-strategies.html">Migration 
Strategies</a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Steps and overall strategies for migrating Struts 1 
applications to Struts 2.</p></td></tr><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shape="rect" href="migration-tools.html">Migration 
Tools</a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Development tools to help aid the migration 
process.</p></td></tr></tbody></table></div><h4 
id="MigrationGuide-Tutorials">Tutorials</h4><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shape="rect" class="external-link" href="http://www.
 infoq.com/news/migrating-struts2" rel="nofollow">Migrating Applications to 
Struts 2 </a></p></th><td colspan="1" rowspan="1" class="confluenceTd"><p>A 
three-part series by Ian Roughley (Sep 
2006)</p></td></tr></tbody></table></div><h4 
id="MigrationGuide-Roadmap">Roadmap</h4><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shape="rect" class="external-link" 
href="http://struts.apache.org/roadmap.html#new";>Roadmap FAQ</a></p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p>What's in store for Struts 
2?</p></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p><a 
shape="rect" class="external-link" 
href="http://www.oreillynet.com/onjava/blog/2006/10/my_history_of_struts_2.html";
 rel="nofollow">A History of Struts 2</a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Don Brown's summary of 
events</p></td></tr></tbody></table></div><h3 
id="MigrationGuide-Webwork2.2toStruts2">Webwork 2.2 t
 o Struts 2</h3><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p><a shape="rect" 
href="key-changes-from-webwork-2.html">Key Changes From WebWork 
2</a></p></th><td colspan="1" rowspan="1" class="confluenceTd"><p>What has been 
removed or changed from WebWork 2.2 to Struts 2</p></td></tr><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p><a shape="rect" 
href="webwork-2-migration-strategies.html">WebWork 2 Migration 
Strategies</a></p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Steps and overall strategies for migrating WebWork 2 
applications to Struts 2.</p></td></tr></tbody></table></div><h2 
id="MigrationGuide-FAQs">FAQs</h2><ul><li><a shape="rect" 
href="where-do-we-get-the-latest-version-the-framework.html">Where do we get 
the latest version the framework</a>?</li><li><a shape="rect" 
href="what-are-some-of-the-frameworks-best-features.html">What are some of the 
framework's best features</a>?</li><li>
 <a shape="rect" href="what-is-the-actioncontext.html">What is the 
ActionContext?</a></li></ul><h2 id="MigrationGuide-Next:">Next: <a shape="rect" 
href="contributors-guide.html">Contributors Guide</a></h2></div>
         </div>
 
                     <div class="tabletitle">

Added: websites/production/struts/content/docs/s2-023.html
==============================================================================
--- websites/production/struts/content/docs/s2-023.html (added)
+++ websites/production/struts/content/docs/s2-023.html Sun Dec  7 14:57:22 2014
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- 
+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. 
+-->
+<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>S2-023</title>
+</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>
+            &nbsp;<a href="home.html">Home</a>&nbsp;&gt;&nbsp;<a 
href="security-bulletins.html">Security Bulletins</a>&nbsp;&gt;&nbsp;<a 
href="s2-023.html">S2-023</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">S2-023</div>
+
+        <div class="greynavbar" align="right" style="padding: 2px 10px; 
margin: 0px;">
+            <a 
href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=48792238";>
+                <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=48792238";>Edit
 Page</a>
+            &nbsp;
+            <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>
+            &nbsp;
+            <a 
href="https://cwiki.apache.org/confluence/pages/createpage.action?spaceKey=WW&fromPageId=48792238";>
+                <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=48792238";>Add
 Page</a>
+            &nbsp;
+            <a 
href="https://cwiki.apache.org/confluence/pages/createblogpost.action?spaceKey=WW&fromPageId=48792238";>
+                <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=48792238";>Add
 News</a>
+        </div>
+    </div>
+
+    <div class="pagecontent">
+        <div class="wiki-content">
+            <div id="ConfluenceContent"><h2 
id="S2-023-Summary">Summary</h2>Generated value of token can be predictable<div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Who should read this</p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p>All Struts 2 developers and 
users</p></td></tr><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Impact of vulnerability</p></th><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The attacker make a specially craft form 
using the predicted token that force an action to a logged-in user 
(CSRF).</p></td></tr><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Maximum security rating</p></th><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Medium</p></td></tr><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Recommendation</p></th><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Developers should immediately upgrade to <a 
shape="rect" class="external
 -link" href="http://struts.apache.org/download.cgi#struts2320";>Struts 
2.3.20</a> if they use <code>&lt;s:token/&gt;</code> 
support</p></td></tr><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Affected Software</p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Struts 2.0.0 - Struts 2.3.16.3</p></td></tr><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p>Reporter</p></th><td 
colspan="1" rowspan="1" class="confluenceTd"><p><span style="color: 
rgb(34,34,34);">Philippe Arteau of Groupe Technologies 
Desjardins</span></p></td></tr><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>CVE Identifier</p></th><td colspan="1" rowspan="1" 
class="confluenceTd"><p><span style="color: 
rgb(34,34,34);">CVE-2014-7809</span></p></td></tr></tbody></table></div><h2 
id="S2-023-Problem">Problem</h2><p><span style="color: rgb(34,34,34);">The 
attacker fetch any given form where a token is present and can predict the next 
value of the token used to secure form submission.</span></p><
 h2 id="S2-023-Solution">Solution</h2><p>In Struts 2.3.20 a better random 
generator was used to generate unpredictable values.</p><h2 
id="S2-023-Backwardcompatibility">Backward compatibility</h2><p>No backward 
compatibility problems are expected.</p><h2 
id="S2-023-Workaround">Workaround</h2><h2 
id="S2-023-Notpossiblewhenusing&lt;s:token/&gt;tag-youmustupgradetothelatestversion."><span
 style="font-size: 14.0px;line-height: 20.0px;">Not possible when 
using&#160;<code>&lt;s:token/&gt;</code> tag - you must upgrade to the latest 
version.</span></h2><p><span style="font-size: 14.0px;line-height: 
1.4285715;"><br clear="none"></span></p></div>
+        </div>
+
+        
+    </div>
+</div>
+<div class="footer">
+    Generated by CXF SiteExporter
+</div>
+</body>
+</html>
\ No newline at end of file

Modified: websites/production/struts/content/docs/security-bulletins.html
==============================================================================
--- websites/production/struts/content/docs/security-bulletins.html (original)
+++ websites/production/struts/content/docs/security-bulletins.html Sun Dec  7 
14:57:22 2014
@@ -126,7 +126,7 @@ under the License.
     <div class="pagecontent">
         <div class="wiki-content">
             <div id="ConfluenceContent"><p>The following security bulletins 
are available:</p>
-<ul class="childpages-macro"><li><a shape="rect" href="s2-001.html">S2-001</a> 
&#8212; <span class="smalltext">Remote code exploit on form validation 
error</span></li><li><a shape="rect" href="s2-002.html">S2-002</a> &#8212; 
<span class="smalltext">Cross site scripting (XSS) vulnerability on <url> and 
<a> tags</a></url></span></li><li><a shape="rect" href="s2-003.html">S2-003</a> 
&#8212; <span class="smalltext">XWork ParameterInterceptors bypass allows OGNL 
statement execution</span></li><li><a shape="rect" 
href="s2-004.html">S2-004</a> &#8212; <span class="smalltext">Directory 
traversal vulnerability while serving static content</span></li><li><a 
shape="rect" href="s2-005.html">S2-005</a> &#8212; <span 
class="smalltext">XWork ParameterInterceptors bypass allows remote command 
execution</span></li><li><a shape="rect" href="s2-006.html">S2-006</a> &#8212; 
<span class="smalltext">Multiple Cross-Site Scripting (XSS) in XWork generated 
error pages</span></li><li><a shape="rect" href="s2
 -007.html">S2-007</a> &#8212; <span class="smalltext">User input is evaluated 
as an OGNL expression when there's a conversion error</span></li><li><a 
shape="rect" href="s2-008.html">S2-008</a> &#8212; <span 
class="smalltext">Multiple critical vulnerabilities in 
Struts2</span></li><li><a shape="rect" href="s2-009.html">S2-009</a> &#8212; 
<span class="smalltext">ParameterInterceptor vulnerability allows remote 
command execution</span></li><li><a shape="rect" href="s2-010.html">S2-010</a> 
&#8212; <span class="smalltext">When using Struts 2 token mechanism for CSRF 
protection, token check may be bypassed by misusing known session 
attributes</span></li><li><a shape="rect" href="s2-011.html">S2-011</a> &#8212; 
<span class="smalltext">Long request parameter names might significantly 
promote the effectiveness of DOS attacks</span></li><li><a shape="rect" 
href="s2-012.html">S2-012</a> &#8212; <span class="smalltext">Showcase app 
vulnerability allows remote command execution</span></li><li><a
  shape="rect" href="s2-013.html">S2-013</a> &#8212; <span class="smalltext">A 
vulnerability, present in the includeParams attribute of the URL and Anchor 
Tag, allows remote command execution</span></li><li><a shape="rect" 
href="s2-014.html">S2-014</a> &#8212; <span class="smalltext">A vulnerability 
introduced by forcing parameter inclusion in the URL and Anchor Tag allows 
remote command execution, session access and manipulation and XSS 
attacks</span></li><li><a shape="rect" href="s2-015.html">S2-015</a> &#8212; 
<span class="smalltext">A vulnerability introduced by wildcard matching 
mechanism or double evaluation of OGNL Expression allows remote command 
execution.</span></li><li><a shape="rect" href="s2-016.html">S2-016</a> &#8212; 
<span class="smalltext">A vulnerability introduced by manipulating parameters 
prefixed with "action:"/"redirect:"/"redirectAction:" allows remote command 
execution</span></li><li><a shape="rect" href="s2-017.html">S2-017</a> &#8212; 
<span class="smalltext
 ">A vulnerability introduced by manipulating parameters prefixed with 
"redirect:"/"redirectAction:" allows for open redirects</span></li><li><a 
shape="rect" href="s2-018.html">S2-018</a> &#8212; <span 
class="smalltext">Broken Access Control Vulnerability in Apache 
Struts2</span></li><li><a shape="rect" href="s2-019.html">S2-019</a> &#8212; 
<span class="smalltext">Dynamic Method Invocation disabled by 
default</span></li><li><a shape="rect" href="s2-020.html">S2-020</a> &#8212; 
<span class="smalltext">Upgrade Commons FileUpload to version 1.3.1 (avoids DoS 
attacks) and adds 'class' to exclude params in ParametersInterceptor (avoid 
ClassLoader manipulation)</span></li><li><a shape="rect" 
href="s2-021.html">S2-021</a> &#8212; <span class="smalltext">Improves excluded 
params in ParametersInterceptor and CookieInterceptor to avoid ClassLoader 
manipulation</span></li><li><a shape="rect" href="s2-022.html">S2-022</a> 
&#8212; <span class="smalltext">Extends excluded params in CookieIntercept
 or to avoid manipulation of Struts' internals</span></li></ul></div>
+<ul class="childpages-macro"><li><a shape="rect" href="s2-001.html">S2-001</a> 
&#8212; <span class="smalltext">Remote code exploit on form validation 
error</span></li><li><a shape="rect" href="s2-002.html">S2-002</a> &#8212; 
<span class="smalltext">Cross site scripting (XSS) vulnerability on <url> and 
<a> tags</a></url></span></li><li><a shape="rect" href="s2-003.html">S2-003</a> 
&#8212; <span class="smalltext">XWork ParameterInterceptors bypass allows OGNL 
statement execution</span></li><li><a shape="rect" 
href="s2-004.html">S2-004</a> &#8212; <span class="smalltext">Directory 
traversal vulnerability while serving static content</span></li><li><a 
shape="rect" href="s2-005.html">S2-005</a> &#8212; <span 
class="smalltext">XWork ParameterInterceptors bypass allows remote command 
execution</span></li><li><a shape="rect" href="s2-006.html">S2-006</a> &#8212; 
<span class="smalltext">Multiple Cross-Site Scripting (XSS) in XWork generated 
error pages</span></li><li><a shape="rect" href="s2
 -007.html">S2-007</a> &#8212; <span class="smalltext">User input is evaluated 
as an OGNL expression when there's a conversion error</span></li><li><a 
shape="rect" href="s2-008.html">S2-008</a> &#8212; <span 
class="smalltext">Multiple critical vulnerabilities in 
Struts2</span></li><li><a shape="rect" href="s2-009.html">S2-009</a> &#8212; 
<span class="smalltext">ParameterInterceptor vulnerability allows remote 
command execution</span></li><li><a shape="rect" href="s2-010.html">S2-010</a> 
&#8212; <span class="smalltext">When using Struts 2 token mechanism for CSRF 
protection, token check may be bypassed by misusing known session 
attributes</span></li><li><a shape="rect" href="s2-011.html">S2-011</a> &#8212; 
<span class="smalltext">Long request parameter names might significantly 
promote the effectiveness of DOS attacks</span></li><li><a shape="rect" 
href="s2-012.html">S2-012</a> &#8212; <span class="smalltext">Showcase app 
vulnerability allows remote command execution</span></li><li><a
  shape="rect" href="s2-013.html">S2-013</a> &#8212; <span class="smalltext">A 
vulnerability, present in the includeParams attribute of the URL and Anchor 
Tag, allows remote command execution</span></li><li><a shape="rect" 
href="s2-014.html">S2-014</a> &#8212; <span class="smalltext">A vulnerability 
introduced by forcing parameter inclusion in the URL and Anchor Tag allows 
remote command execution, session access and manipulation and XSS 
attacks</span></li><li><a shape="rect" href="s2-015.html">S2-015</a> &#8212; 
<span class="smalltext">A vulnerability introduced by wildcard matching 
mechanism or double evaluation of OGNL Expression allows remote command 
execution.</span></li><li><a shape="rect" href="s2-016.html">S2-016</a> &#8212; 
<span class="smalltext">A vulnerability introduced by manipulating parameters 
prefixed with "action:"/"redirect:"/"redirectAction:" allows remote command 
execution</span></li><li><a shape="rect" href="s2-017.html">S2-017</a> &#8212; 
<span class="smalltext
 ">A vulnerability introduced by manipulating parameters prefixed with 
"redirect:"/"redirectAction:" allows for open redirects</span></li><li><a 
shape="rect" href="s2-018.html">S2-018</a> &#8212; <span 
class="smalltext">Broken Access Control Vulnerability in Apache 
Struts2</span></li><li><a shape="rect" href="s2-019.html">S2-019</a> &#8212; 
<span class="smalltext">Dynamic Method Invocation disabled by 
default</span></li><li><a shape="rect" href="s2-020.html">S2-020</a> &#8212; 
<span class="smalltext">Upgrade Commons FileUpload to version 1.3.1 (avoids DoS 
attacks) and adds 'class' to exclude params in ParametersInterceptor (avoid 
ClassLoader manipulation)</span></li><li><a shape="rect" 
href="s2-021.html">S2-021</a> &#8212; <span class="smalltext">Improves excluded 
params in ParametersInterceptor and CookieInterceptor to avoid ClassLoader 
manipulation</span></li><li><a shape="rect" href="s2-022.html">S2-022</a> 
&#8212; <span class="smalltext">Extends excluded params in CookieIntercept
 or to avoid manipulation of Struts' internals</span></li><li><a shape="rect" 
href="s2-023.html">S2-023</a> &#8212; <span class="smalltext">Generated value 
of token can be predictable</span></li></ul></div>
         </div>
 
                     <div class="tabletitle">
@@ -141,6 +141,9 @@ under the License.
                     <span class="smalltext">(Apache Struts 2 
Documentation)</span>
                     <br>
                                     $page.link($child)
+                    <span class="smalltext">(Apache Struts 2 
Documentation)</span>
+                    <br>
+                                    $page.link($child)
                     <span class="smalltext">(Apache Struts 2 
Documentation)</span>
                     <br>
                                     $page.link($child)

Modified: websites/production/struts/content/docs/security.html
==============================================================================
--- websites/production/struts/content/docs/security.html (original)
+++ websites/production/struts/content/docs/security.html Sun Dec  7 14:57:22 
2014
@@ -138,16 +138,16 @@ under the License.
 
     <div class="pagecontent">
         <div class="wiki-content">
-            <div id="ConfluenceContent"><h3 
id="Security-/*&lt;![CDATA[*/div.rbtoc1415950673266{padding:0px;}div.rbtoc1415950673266ul{list-style:disc;margin-left:0px;}div.rbtoc1415950673266li{margin-left:0px;padding-left:0px;}/*]]&gt;*/SecuritytipsRestrictaccesstotheConfigBrowserDon'tmixdifferentaccesslevels"><style
 type="text/css">/*<![CDATA[*/
-div.rbtoc1415950673266 {padding: 0px;}
-div.rbtoc1415950673266 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1415950673266 li {margin-left: 0px;padding-left: 0px;}
+            <div id="ConfluenceContent"><h3 
id="Security-/*&lt;![CDATA[*/div.rbtoc1417964184849{padding:0px;}div.rbtoc1417964184849ul{list-style:disc;margin-left:0px;}div.rbtoc1417964184849li{margin-left:0px;padding-left:0px;}/*]]&gt;*/SecuritytipsRestrictaccesstotheConfigBrowserDon'tmixdifferentaccesslevels"><style
 type="text/css">/*<![CDATA[*/
+div.rbtoc1417964184849 {padding: 0px;}
+div.rbtoc1417964184849 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1417964184849 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></h3><div class="toc-macro rbtoc1415950673266">
+/*]]>*/</style></h3><div class="toc-macro rbtoc1417964184849">
 <ul class="toc-indentation"><li><a shape="rect" 
href="#Security-Securitytips">Security tips</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#Security-RestrictaccesstotheConfigBrowser">Restrict access to the Config 
Browser</a></li><li><a shape="rect" 
href="#Security-Don'tmixdifferentaccesslevelsinthesamenamespace">Don't mix 
different access levels in the same namespace</a></li></ul>
 </li><li><a shape="rect" href="#Security-Internalsecuritymechanism">Internal 
security mechanism</a>
-<ul class="toc-indentation"><li><a shape="rect" 
href="#Security-OGNLisusedtocallaction'smethods">OGNL is used to call action's 
methods</a></li></ul>
+<ul class="toc-indentation"><li><a shape="rect" 
href="#Security-Accessingstaticmethods">Accessing static methods</a></li><li><a 
shape="rect" href="#Security-OGNLisusedtocallaction'smethods">OGNL is used to 
call action's methods</a></li></ul>
 </li></ul>
 </div><h3 id="Security-Securitytips">Security tips</h3><p>The Apache Struts 2 
doesn't provide any security mechanism - it is just a pure web framework. Below 
are few tips you should consider during application development with the Apache 
Struts 2.</p><h4 id="Security-RestrictaccesstotheConfigBrowser">Restrict access 
to the Config Browser</h4><p><a shape="rect" 
href="config-browser-plugin.html">Config Browser Plugin</a>&#160;exposes 
internal configuration and should be used only during development phase. If you 
must use it on production site, we strictly recommend restricting access to it 
- you can use &#160;Basic Authentication or any other security mechanism (e.g. 
<a shape="rect" class="external-link" href="http://shiro.apache.org/";>Apache 
Shiro</a>)</p><h4 
id="Security-Don'tmixdifferentaccesslevelsinthesamenamespace">Don't mix 
different access levels in the same namespace</h4><p>Very often access to 
different resources is controlled based on URL patterns, see snippet below. 
Becaus
 e of that you cannot mix actions with different security levels in the same 
namespace. Always group actions in one namespace by security level.</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="theme: Default; brush: xml; gutter: false" 
type="syntaxhighlighter"><![CDATA[    &lt;security-constraint&gt;
@@ -184,6 +184,12 @@ div.rbtoc1415950673266 li {margin-left:
                             <p>It is possible to redefine the above constants 
in <code>struts.xml</code> but try to avoid this and rather change design of 
your application!</p>
                     </div>
     </div>
+<h4 id="Security-Accessingstaticmethods">Accessing static methods</h4><p>In 
case you still use static methods in expressions (setting 
<code>struts.ognl.allowStaticMethodAccess</code>&#160;<span style="color: 
rgb(34,34,34);">to true) please be aware that this won't work anymore as 
internal security mechanism consider this as access 
to&#160;<code>java.lang.Class</code> which is on the excluded list of classes 
(see above). Temporary solution is to copy the above into 
your&#160;<code>struts.xml</code> and remove&#160;<code>java.lang.Class</code> 
from the excluded classes.</span></p>    <div class="aui-message problem 
shadowed information-macro">
+                            <span class="aui-icon icon-problem">Icon</span>
+                <div class="message-content">
+                            <p>Support for accessing static methods from 
expression will be disabled soon, please consider re-factoring your application 
to avoid further problems! Please check <a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/browse/WW-4348";>WW-4348</a>.</p>
+                    </div>
+    </div>
 <h4 id="Security-OGNLisusedtocallaction'smethods">OGNL is used to call 
action's methods</h4><p>This can impact actions which have large inheritance 
hierarchy and use the same method's name throughout the hierarchy, this was 
reported as an issue <a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/browse/WW-4405";>WW-4405</a>. See the 
example below:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" 
type="syntaxhighlighter"><![CDATA[public class RealAction extends BaseAction {  
     @Action(&quot;save&quot;)

Modified: websites/production/struts/content/docs/struts-next.html
==============================================================================
--- websites/production/struts/content/docs/struts-next.html (original)
+++ websites/production/struts/content/docs/struts-next.html Sun Dec  7 
14:57:22 2014
@@ -125,20 +125,20 @@ under the License.
 
     <div class="pagecontent">
         <div class="wiki-content">
-            <div id="ConfluenceContent"><h3 
id="StrutsNext-/*&lt;![CDATA[*/div.rbtoc1405758783405{padding:0px;}div.rbtoc1405758783405ul{list-style:disc;margin-left:0px;}div.rbtoc1405758783405li{margin-left:0px;padding-left:0px;}/*]]&gt;*/Whatshouldbeimproved/changedPlanforStruts2.5PlanforStruts3Cleanupwebsit"><style
 type="text/css">/*<![CDATA[*/
-div.rbtoc1405758783405 {padding: 0px;}
-div.rbtoc1405758783405 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1405758783405 li {margin-left: 0px;padding-left: 0px;}
-
-/*]]>*/</style></h3><div class="toc-macro rbtoc1405758783405">
-<ul class="toc-indentation"><li><a shape="rect" 
href="#StrutsNext-Whatshouldbeimproved/changed">What should be improved / 
changed</a>
-<ul class="toc-indentation"><li><a shape="rect" 
href="#StrutsNext-PlanforStruts2.5">Plan for Struts 2.5</a></li><li><a 
shape="rect" href="#StrutsNext-PlanforStruts3">Plan for Struts 3</a></li></ul>
+            <div id="ConfluenceContent"><h3 
id="StrutsNext-/*&lt;![CDATA[*/div.rbtoc1417964183047{padding:0px;}div.rbtoc1417964183047ul{list-style:disc;margin-left:0px;}div.rbtoc1417964183047li{margin-left:0px;padding-left:0px;}/*]]&gt;*/Whatshouldbeimproved/changedDevelopmentplanofStruts3M1(akaStruts2.5)M2("><style
 type="text/css">/*<![CDATA[*/
+div.rbtoc1417964183047 {padding: 0px;}
+div.rbtoc1417964183047 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1417964183047 li {margin-left: 0px;padding-left: 0px;}
+
+/*]]>*/</style></h3><div class="toc-macro rbtoc1417964183047">
+<ul class="toc-indentation"><li><a shape="rect" 
href="#StrutsNext-Whatshouldbeimproved/changed">What should be improved / 
changed</a></li><li><a shape="rect" 
href="#StrutsNext-DevelopmentplanofStruts3">Development plan of Struts 3</a>
+<ul class="toc-indentation"><li><a shape="rect" 
href="#StrutsNext-M1(akaStruts2.5)">M1 (aka Struts 2.5)</a></li><li><a 
shape="rect" href="#StrutsNext-M2(alphaStruts3)">M2 (alpha Struts 
3)</a></li><li><a shape="rect" href="#StrutsNext-M3(alphaStruts3)">M3 (alpha 
Struts 3)</a></li><li><a shape="rect" href="#StrutsNext-M4(beta1Struts3)">M4 
(beta 1 Struts 3)</a></li></ul>
 </li><li><a shape="rect" href="#StrutsNext-Cleanupwebsite">Cleanup 
website</a></li><li><a shape="rect" 
href="#StrutsNext-Undiscussedideas">Undiscussed ideas</a></li></ul>
-</div><h1 id="StrutsNext-Whatshouldbeimproved/changed">What should be improved 
/ changed</h1><p><a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/browse/WW/fixforversion/12319158";>Issues</a>
 connected with the new version <br clear="none"> <a shape="rect" 
class="external-link" 
href="https://builds.apache.org/view/S-Z/view/Struts/job/Struts3/";>Build</a> of 
the latest version</p><ul><li>Use Git instead Svn<ul><li>Use Git flow to manage 
the repo and development process<ul><li><a shape="rect" class="external-link" 
href="http://nvie.com/posts/a-successful-git-branching-model/"; 
rel="nofollow">http://nvie.com/posts/a-successful-git-branching-model/</a></li><li><a
 shape="rect" class="external-link" href="https://github.com/nvie/gitflow"; 
rel="nofollow">https://github.com/nvie/gitflow</a></li><li><a shape="rect" 
class="external-link" 
href="http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/"; 
rel="nofollow">http://jeffkreeftmeijer.com/2010/why-arent-you-usin
 g-git-flow/</a></li></ul></li></ul></li><li>Switch to Java 1.6</li><li>Update 
"internal" injection to use current Guice version<ul><li>Consider usage of <a 
shape="rect" class="external-link" 
href="http://onami.apache.org/";>http://onami.apache.org/</a></li></ul></li><li>Refactorings
 for further extensibility based on questions on the list, on CodeRanch, and 
Stack Overflow<ul><li>JR plugin refactoring. Allow compiled reports as 
classpath resources.</li></ul></li><li>Refactor conversion of primitives (and 
wrappers) in XWork</li><li>Switch to <a shape="rect" class="external-link" 
href="http://commons.apache.org/ognl";>OGNL 4.0</a>.</li><li>Consider renaming 
packages to org.apache.struts3</li><li>Remove deprecated 
Plugins<ul><li>Codebehind</li><li>Dojo</li><li>Struts1 
?</li></ul></li><li>Normalize property name camel-casing (foo.bar.BazPlugh to 
foo.bar.bazPlugh)</li><li>Check possible usage of Tiles Auto Tag (<a 
shape="rect" class="external-link" href="http://tiles.apache.org/tiles-autota
 g/">http://tiles.apache.org/tiles-autotag/</a>) instead of Struts 
Annotations</li></ul><h2 id="StrutsNext-PlanforStruts2.5">Plan for Struts 
2.5</h2><ul class="inline-task-list" 
data-inline-tasks-content-id="27832363"><li class="checked" 
data-inline-task-id="3">Request Git repo from INFRA</li><li class="checked" 
data-inline-task-id="4"><span style="line-height: 1.4285715;">Import 
project</span></li></ul>
+</div><h1 id="StrutsNext-Whatshouldbeimproved/changed">What should be improved 
/ changed</h1><p><a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/browse/WW/fixforversion/12319158";>Issues</a>
 connected with the new version <br clear="none"> <a shape="rect" 
class="external-link" 
href="https://builds.apache.org/view/S-Z/view/Struts/job/Struts3/";>Build</a> of 
the latest version</p><ul><li>Use Git instead Svn&#160;<img class="emoticon 
emoticon-tick" 
src="https://cwiki.apache.org/confluence/s/en_GB-1988229788/4109/76e0dbb30bc8580e459c201f3535d84f9283a9ac.1/_/images/icons/emoticons/check.png";
 data-emoticon-name="tick" alt="(tick)"><ul><li>Use Git flow to manage the repo 
and development process<ul><li><a shape="rect" class="external-link" 
href="http://nvie.com/posts/a-successful-git-branching-model/"; 
rel="nofollow">http://nvie.com/posts/a-successful-git-branching-model/</a></li><li><a
 shape="rect" class="external-link" href="https://github.com/nvie/gitflow"; 
rel="nof
 ollow">https://github.com/nvie/gitflow</a></li><li><a shape="rect" 
class="external-link" 
href="http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/"; 
rel="nofollow">http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/</a></li></ul></li></ul></li><li>Switch
 to Java 6</li><li>Update "internal" injection to use current Guice 
version<ul><li>Consider usage of <a shape="rect" class="external-link" 
href="http://onami.apache.org/";>http://onami.apache.org/</a></li></ul></li><li>Refactorings
 for further extensibility based on questions on the list, on CodeRanch, and 
Stack Overflow<ul><li>JR plugin refactoring. Allow compiled reports as 
classpath resources.</li></ul></li><li>Refactor conversion of primitives (and 
wrappers) in XWork</li><li>Switch to <a shape="rect" class="external-link" 
href="http://commons.apache.org/ognl";>OGNL 4.0</a>.</li><li>Consider renaming 
packages to org.apache.struts3</li><li>Remove deprecated 
Plugins<ul><li>Codebehind</li><li>Dojo</li><li>Struts1 ?
 </li></ul></li><li>Normalize property name camel-casing (foo.bar.BazPlugh to 
foo.bar.bazPlugh)</li><li>Check possible usage of Tiles Auto Tag (<a 
shape="rect" class="external-link" 
href="http://tiles.apache.org/tiles-autotag/";>http://tiles.apache.org/tiles-autotag/</a>)
 instead of Struts Annotations</li></ul><h1 
id="StrutsNext-DevelopmentplanofStruts3">Development plan of Struts 3</h1><h2 
id="StrutsNext-M1(akaStruts2.5)">M1 (aka Struts 2.5)</h2><ul 
class="inline-task-list" data-inline-tasks-content-id="27832363"><li 
class="checked" data-inline-task-id="3">Request Git repo from INFRA</li><li 
class="checked" data-inline-task-id="4"><span style="line-height: 
1.4285715;">Import project</span></li></ul>
 
 
 
-<ol><li>Remove deprecated plugins</li><li>Drop support for Struts 1 (remove 
plugin)</li><li>Remove deprecated APIs</li><li>Switch to Java 1.6</li><li>Merge 
XWork code into Struts Core (without renaming packages)</li><li>Switch to 
strict DMI by default - allow only defined methods to be accessible via DMI - 
user can always change that list</li><li>Prepare the first 
release</li><li>Cleanup website</li></ol><h2 
id="StrutsNext-PlanforStruts3">Plan for Struts 3</h2><ol><li>Finish merging 
XWork code base (rename packages)</li><li>Rename Struts 2 packages to 
org.apache.struts3</li><li>Use loggin layer&#160;<a shape="rect" 
class="external-link" href="https://code.google.com/p/anodyzed/"; 
rel="nofollow">https://code.google.com/p/anodyzed/</a>&#160;(<span 
style="line-height: 1.4285715;">Chris Pratt is willing to donate that project 
to Struts)</span></li><li>Switch to OGNL 4</li><li>Divide core into api and 
spi</li><li>prepare ALPHA release</li></ol><h1 
id="StrutsNext-Cleanupwebsite">Cleanup we
 bsite</h1><p>There should be just one project website - Apache Struts. Right 
now there is the main website - Apache Struts project, subsite Apache Struts 1 
and another subsite Apache Struts 2. After announcing EOL of Struts 1, we 
basically supporting just one version or rather branch - Apache Struts 2 which 
should be at some point converted just into Apache Struts (version 2.5, version 
3.0, version 3.1, etc.).</p><p>With that in mind we should have just one 
website to manage the project.</p><h1 
id="StrutsNext-Undiscussedideas">Undiscussed ideas</h1><ul><li>Better support 
for modern webframeworks like AngularJS (@grobmeier)</li><li>Make use of slf4j 
and probably log4j2 (@grobmeier) - support for slf4j is already there, thanks 
to Johannes, check <a shape="rect" 
href="logging.html">Logging</a></li><li>Provide alternatives to java property 
file translations (@grobmeier)</li><li>Replace css and xhtml theme with an new 
html5 theme. (@jogep)</li><li>Extract XML configuration to dedicated p
 lugin - XWork will provide only configuration via code, then user can decide 
which configuration to use - code, XML, convention, DB?</li></ul></div>
+<ol><li>Remove deprecated plugins<ol><li>we need place for deprecated stuff 
(to move the source code to) - new project "struts-archive"</li><li>drop 
support for Struts 1 (remove plugin)</li><li>dojo plugin</li><li>codebehind 
plugin</li><li>jsf plugin</li></ol></li><li>Remove deprecated APIs<ol><li>if it 
cannot be removed, mark to be removed during work on 
3.0</li></ol></li><li>Switch to Java 7</li><li>Merge XWork code into Struts 
Core (without renaming packages)</li><li>Switch to strict DMI by default - 
allow only defined methods to be accessible via DMI - user can always change 
that list</li><li>Prepare the first release</li><li>Cleanup website<ol><li>new 
user guide totally developed out of Confluence - people will be able to 
contribute to it via GitHub</li><li>Confluence (wiki) used only to explain more 
detailed given aspect of the framework (ie.: how to implement your own 
converter in details)</li><li>keep just one version of the doc (no more 
release/2.3.x, release/2.2.x and so o
 n - Google indexes everything and people are confused)</li></ol></li></ol><h2 
id="StrutsNext-M2(alphaStruts3)">M2 (alpha Struts 3)</h2><ol><li>Finish merging 
XWork code base (rename packages)</li><li>Rename Struts 2 packages to 
org.apache.struts3</li><li>Use logging layer from <a shape="rect" 
class="external-link" 
href="http://logging.apache.org/log4j/2.x/manual/api.html";>Log4j2</a> or <a 
shape="rect" class="external-link" href="https://code.google.com/p/anodyzed/"; 
rel="nofollow">https://code.google.com/p/anodyzed/</a>&#160;(<span 
style="line-height: 1.4285715;">Chris Pratt is willing to donate that project 
to Struts)</span></li><li>Switch to OGNL 4<ol><li>we must release it 
first</li><li>also we need better API interfaces to allow integrate Struts with 
other EL engines, ie.: MVEL - right now the whole conversion layer is hardly 
tied with OGNL</li></ol></li></ol><h2 id="StrutsNext-M3(alphaStruts3)">M3 
(alpha Struts 3)</h2><ol><li>Divide core into api and spi</li></ol><h2 
id="StrutsN
 ext-M4(beta1Struts3)">M4 (beta 1 Struts 3)</h2><ol><li>move plugins to 
separated project<ol><li>disconnect plugins release cycle from core 
release</li></ol></li></ol><h1 id="StrutsNext-Cleanupwebsite">Cleanup 
website</h1><p>There should be just one project website - Apache Struts. Right 
now there is the main website - Apache Struts project, subsite Apache Struts 1 
and another subsite Apache Struts 2. After announcing EOL of Struts 1, we 
basically supporting just one version or rather branch - Apache Struts 2 which 
should be at some point converted just into Apache Struts (version 2.5, version 
3.0, version 3.1, etc.).</p><p>With that in mind we should have just one 
website to manage the project.</p><h1 
id="StrutsNext-Undiscussedideas">Undiscussed ideas</h1><ul><li>JSR 371 support 
(<a shape="rect" class="external-link" 
href="https://jcp.org/en/jsr/detail?id=371"; 
rel="nofollow">https://jcp.org/en/jsr/detail?id=371</a>)</li><li>Better support 
for modern webframeworks like AngularJS (@gr
 obmeier)</li><li>Make use of slf4j and probably log4j2 (@grobmeier) - support 
for slf4j is already there, thanks to Johannes, check <a shape="rect" 
href="logging.html">Logging</a></li><li>Provide alternatives to java property 
file translations (@grobmeier)</li><li>Replace css and xhtml theme with an new 
html5 theme. (@jogep)</li><li>Extract XML configuration to dedicated plugin - 
XWork will provide only configuration via code, then user can decide which 
configuration to use - code, XML, convention, DB?</li><li>Should plugins move 
out of the Struts release cycle so they can independently released? 
(@pbenedict)</li><li>Turn all request and response processing into interceptors 
(perhaps introduce a "system stack" to complement a "user stack" to simplify 
configuration) (@pbenedict)</li></ul></div>
         </div>
 
         

Modified: websites/production/struts/content/docs/version-notes-2320.html
==============================================================================
--- websites/production/struts/content/docs/version-notes-2320.html (original)
+++ websites/production/struts/content/docs/version-notes-2320.html Sun Dec  7 
14:57:22 2014
@@ -161,7 +161,13 @@ under the License.
                             <p>Please read information about new <a 
shape="rect" href="security.html#Security-Internalsecuritymechanism">internal 
security mechanism</a> introduced with this version, it can have impact on your 
application!</p>
                     </div>
     </div>
-<p>&#160;</p><h3 id="VersionNotes2.3.20-IssueDetail">Issue 
Detail</h3><ul><li><a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311041&amp;version=12319176";>JIRA
 Release Notes 2.3.20</a></li></ul><h3 id="VersionNotes2.3.20-IssueList">Issue 
List</h3><ul><li><a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/issues/?filter=12326872";>Struts 2.3.20 
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.20-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 clear="none"></span></div></div>
+    <div class="aui-message warning shadowed information-macro">
+                            <span class="aui-icon icon-warning">Icon</span>
+                <div class="message-content">
+                            <p>This release contains fix related to <a 
shape="rect" href="s2-023.html">S2-023</a> security bulletin, please read it 
carefully!</p>
+                    </div>
+    </div>
+<h3 id="VersionNotes2.3.20-IssueDetail">Issue Detail</h3><ul><li><a 
shape="rect" class="external-link" 
href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311041&amp;version=12319176";>JIRA
 Release Notes 2.3.20</a></li></ul><h3 id="VersionNotes2.3.20-IssueList">Issue 
List</h3><ul><li><a shape="rect" class="external-link" 
href="https://issues.apache.org/jira/issues/?filter=12326872";>Struts 2.3.20 
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.20-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-heig
 ht: 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>
 
         


Reply via email to