This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/struts-site.git
The following commit(s) were added to refs/heads/asf-staging by this push:
new 6ccb8c610 Updates stage by Jenkins
6ccb8c610 is described below
commit 6ccb8c61050c1472e7d042cd021241a18d09ef08
Author: jenkins <[email protected]>
AuthorDate: Sun Aug 11 13:42:30 2024 +0000
Updates stage by Jenkins
---
content/download.html | 352 +++++++++++++++-----------------------------------
content/releases.html | 11 ++
2 files changed, 114 insertions(+), 249 deletions(-)
diff --git a/content/download.html b/content/download.html
index 8093d52ba..3b73fca0a 100644
--- a/content/download.html
+++ b/content/download.html
@@ -146,33 +146,36 @@
<article class="container">
<section class="col-md-12">
- <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/download.html"
title="Edit this page on GitHub">Edit on GitHub</a>
+ <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/download.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1>Download a Release of the Apache Struts</h1>
+ <h1 id="download" class="no_toc">Download a Release of the Apache
Struts</h1>
-<p>
- The Apache Struts web framework is a free open-source solution for creating
Java web applications.
-</p>
+<ul id="markdown-toc">
+ <li><a href="#mirror" id="markdown-toc-mirror">Mirror</a></li>
+ <li><a href="#struts-ga" id="markdown-toc-struts-ga">Full Releases</a>
<ul>
+ <li><a href="#struts660" id="markdown-toc-struts660">Struts
6.6.0</a></li>
+ <li><a href="#struts-25x" id="markdown-toc-struts-25x">Struts
2.5.33</a></li>
+ </ul>
+ </li>
+ <li><a href="#prior-releases" id="markdown-toc-prior-releases">Prior
releases</a></li>
+ <li><a href="#verify" id="markdown-toc-verify">Verify the integrity of the
files</a></li>
+</ul>
+
+<p>The Apache Struts web framework is a free open-source solution for creating
Java web applications.</p>
-<p>
- You can start with Apache Struts using <a href="//maven.apache.org">Apache
Maven</a> and optionally provided
- <a href="/maven-archetypes/">archetypes</a> for easier dependency management
and version upgrade.
- Or download some of the distributions for fully offline development.
-</p>
+<p>You can start with Apache Struts using <a href="//maven.apache.org">Apache
Maven</a> and optionally provided
+<a href="/maven-archetypes">archetypes</a> for easier dependency management
and version upgrade.
+Or download some of the distributions for fully offline development.</p>
-<p>
- Use the links below to download a release of Apache Struts from one of our
mirrors. You can
- <a href="#verify">verify the integrity</a> of the downloaded files using
signatures downloaded from our
- main distribution directory.
-</p>
+<p>Use the links below to download a release of Apache Struts from one of our
mirrors. You must
+<a href="#verify">verify the integrity</a> of the downloaded files using
signatures downloaded from our
+main distribution directory.</p>
<h2 id="mirror">Mirror</h2>
-<p>
- The currently selected mirror is <b>[preferred]</b>. If you encounter a
problem with this mirror, please select
- another mirror. If all mirrors are failing, there are <i>backup</i> mirrors
(at the end of the mirrors list)
- that should be available.
-</p>
+<p>[if-any logo] <a href="[link]"></a> [end] The currently selected mirror is
<strong>[preferred]</strong>. If you encounter a problem with
+this mirror, please select another mirror. If all mirrors are failing, there
are <em>backup</em> mirrors (at the end
+of the mirrors list) that should be available.</p>
<form action="[location]" method="get" id="SelectMirror">
Other mirrors:
@@ -193,298 +196,149 @@
[end]
[end]
</select>
- <input type="submit" value="Change"/>
+ <input type="submit" value="Change" />
</form>
-<p>
- You may also consult the
- <a href="https://www.apache.org/mirrors/">complete list of mirrors.</a>
-</p>
+<p>You may also consult the <a href="//www.apache.org/mirrors/">complete list
of mirrors</a>.</p>
<h2 id="struts-ga">Full Releases</h2>
<h3 id="struts660">Struts 6.6.0</h3>
-<p>
- The <a href="https://struts.apache.org/">Apache Struts 6.6.0</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 6.6.0 is the "best available" version of Struts in the 6.x series.
-</p>
+<p>The <a href="//struts.apache.org">Apache Struts 6.6.0</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 6.6.0 is the “best
available”
+version of Struts in the 6.x series.</p>
<ul>
- <li>
- <a
href="https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.6.0">Version
Notes</a>
+ <li><a
href="https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.6.0">Version
Notes</a></li>
+ <li>Source:
+ <ul>
+ <li><a
href="[preferred]struts/6.6.0/struts-6.6.0-src.zip">struts-6.6.0-src.zip</a>
(6.8MB)
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-src.zip.asc">PGP</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-src.zip.sha256">SHA256</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-src.zip.sha512">SHA512</a></li>
+ </ul>
</li>
-
<li>Full Distribution:
<ul>
- <li>
- <a
href="[preferred]struts/6.6.0/struts-6.6.0-all.zip">struts-6.6.0-all.zip</a>
(70MB)
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-all.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-all.zip.sha256">SHA256</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-all.zip.sha512">SHA512</a>]
- </li>
+ <li><a
href="[preferred]struts/6.6.0/struts-6.6.0-all.zip">struts-6.6.0-all.zip</a>
(70MB)
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-all.zip.asc">PGP</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-all.zip.sha256">SHA256</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-all.zip.sha512">SHA512</a></li>
</ul>
</li>
-
<li>Example Applications:
<ul>
- <li>
- <a
href="[preferred]struts/6.6.0/struts-6.6.0-apps.zip">struts-6.6.0-apps.zip</a>
(35MB)
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-apps.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-apps.zip.sha256">SHA256</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-apps.zip.sha512">SHA512</a>]
- </li>
+ <li><a
href="[preferred]struts/6.6.0/struts-6.6.0-apps.zip">struts-6.6.0-apps.zip</a>
(35MB)
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-apps.zip.asc">PGP</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-apps.zip.sha256">SHA256</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-apps.zip.sha512">SHA512</a></li>
</ul>
</li>
-
<li>Essential Dependencies Only:
<ul>
- <li>
- <a
href="[preferred]struts/6.6.0/struts-6.6.0-min-lib.zip">struts-6.6.0-min-lib.zip</a>
(5.9MB)
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-min-lib.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-min-lib.zip.sha256">SHA256</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-min-lib.zip.sha512">SHA512</a>]
- </li>
+ <li><a
href="[preferred]struts/6.6.0/struts-6.6.0-min-lib.zip">struts-6.6.0-min-lib.zip</a>
(5.9MB)
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-min-lib.zip.asc">PGP</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-min-lib.zip.sha256">SHA256</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-min-lib.zip.sha512">SHA512</a></li>
</ul>
</li>
-
<li>All Dependencies:
<ul>
- <li>
- <a
href="[preferred]struts/6.6.0/struts-6.6.0-lib.zip">struts-6.6.0-lib.zip</a>
(25.5MB)
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-lib.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-lib.zip.sha256">SHA256</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-lib.zip.sha512">SHA512</a>]
- </li>
+ <li><a
href="[preferred]struts/6.6.0/struts-6.6.0-lib.zip">struts-6.6.0-lib.zip</a>
(25.5MB)
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-lib.zip.asc">PGP</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-lib.zip.sha256">SHA256</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-lib.zip.sha512">SHA512</a></li>
</ul>
</li>
-
<li>Documentation:
<ul>
- <li>
- <a
href="[preferred]struts/6.6.0/struts-6.6.0-docs.zip">struts-6.6.0-docs.zip</a>
(2.5MB)
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-docs.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-docs.zip.sha256">SHA256</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-docs.zip.sha512">SHA512</a>]
- </li>
- </ul>
- </li>
-
- <li>Source:
- <ul>
- <li>
- <a
href="[preferred]struts/6.6.0/struts-6.6.0-src.zip">struts-6.6.0-src.zip</a>
(6.8MB)
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-src.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-src.zip.sha256">SHA256</a>]
- [<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-src.zip.sha512">SHA512</a>]
- </li>
+ <li><a
href="[preferred]struts/6.6.0/struts-6.6.0-docs.zip">struts-6.6.0-docs.zip</a>
(2.5MB)
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-docs.zip.asc">PGP</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-docs.zip.sha256">SHA256</a>
+<a
href="https://downloads.apache.org/struts/6.6.0/struts-6.6.0-docs.zip.sha512">SHA512</a></li>
</ul>
</li>
-
</ul>
<h3 id="struts-25x">Struts 2.5.33</h3>
<ul>
- <li>
- <a
href="https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.33">Version
Notes</a>
+ <li><a
href="https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.33">Version
Notes</a></li>
+ <li>Source:
+ <ul>
+ <li><a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-src.zip">struts-2.5.33-src.zip</a>
(7MB)
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-src.zip.asc">PGP</a>
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-src.zip.sha256">SHA256</a></li>
+ </ul>
</li>
-
<li>Full Distribution:
<ul>
- <li>
- <a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-all.zip">struts-2.5.33-all.zip</a>
(65MB)
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-all.zip.asc">PGP</a>]
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-all.zip.sha256">SHA256</a>]
- </li>
+ <li><a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-all.zip">struts-2.5.33-all.zip</a>
(65MB)
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-all.zip.asc">PGP</a>
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-all.zip.sha256">SHA256</a></li>
</ul>
</li>
-
<li>Example Applications:
<ul>
- <li>
- <a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-apps.zip">struts-2.5.33-apps.zip</a>
(35MB)
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-apps.zip.asc">PGP</a>]
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-apps.zip.sha256">SHA256</a>]
- </li>
+ <li><a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-apps.zip">struts-2.5.33-apps.zip</a>
(35MB)
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-apps.zip.asc">PGP</a>
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-apps.zip.sha256">SHA256</a></li>
</ul>
</li>
-
<li>Essential Dependencies Only:
<ul>
- <li>
- <a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-min-lib.zip">struts-2.5.33-min-lib.zip</a>
(4MB)
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-min-lib.zip.asc">PGP</a>]
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-min-lib.zip.sha256">SHA256</a>]
- </li>
+ <li><a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-min-lib.zip">struts-2.5.33-min-lib.zip</a>
(4MB)
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-min-lib.zip.asc">PGP</a>
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-min-lib.zip.sha256">SHA256</a></li>
</ul>
</li>
-
<li>All Dependencies:
<ul>
- <li>
- <a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-lib.zip">struts-2.5.33-lib.zip</a>
(19MB)
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-lib.zip.asc">PGP</a>]
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-lib.zip.sha256">SHA256</a>]
- </li>
+ <li><a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-lib.zip">struts-2.5.33-lib.zip</a>
(19MB)
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-lib.zip.asc">PGP</a>
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-lib.zip.sha256">SHA256</a></li>
</ul>
</li>
-
<li>Documentation:
<ul>
- <li>
- <a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-docs.zip">struts-2.5.33-docs.zip</a>
(13MB)
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-docs.zip.asc">PGP</a>]
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-docs.zip.sha256">SHA256</a>]
- </li>
- </ul>
- </li>
-
- <li>Source:
- <ul>
- <li>
- <a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-src.zip">struts-2.5.33-src.zip</a>
(7MB)
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-src.zip.asc">PGP</a>]
- [<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-src.zip.sha256">SHA256</a>]
- </li>
- </ul>
- </li>
-
-</ul>
-
-<h3 id="struts-23x">Struts 2.3.x</h3>
-
-<p>We stopped serving directly the outdated Struts 2.3.x series, you should
immediately upgrade to the latest 2.5.x version
- or migrate to the latest 6.x.x version. Please check the <b>Prior
releases</b> section below, if you are looking for older versions.</p>
-
-<h3 id="struts-extras">Struts Extras</h3>
-
-<ul>
- <li>
- <a href="https://github.com/apache/struts-extras">README</a>
- </li>
-
- <li>Apache Struts 2 Secure Jakarta Multipart parser plugin:
- <ul>
- <li>
- <a
href="[preferred]struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1.jar">
- struts2-secure-jakarta-multipart-parser-plugin-1.1.jar
- </a>
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1.jar.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1.jar.md5">MD5</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1.jar.sha1">SHA1</a>]
- </li>
- </ul>
- </li>
-
- <li>Source:
- <ul>
- <li>
- <a
href="[preferred]struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1-source-release.zip">
- struts2-secure-jakarta-multipart-parser-plugin-1.1-source-release.zip
- </a>
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1-source-release.zip.md5">MD5</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1-source-release.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-multipart-parser-plugin/1.1/struts2-secure-jakarta-multipart-parser-plugin-1.1-source-release.zip.sha1">SHA1</a>]
- </li>
- </ul>
- </li>
-
- <li>Apache Struts 2 Secure Jakarta Stream Multipart parser plugin:
- <ul>
- <li>
- <a
href="[preferred]struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1.jar">
- struts2-secure-jakarta-stream-multipart-parser-plugin-1.1.jar
- </a>
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1.jar.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1.jar.md5">MD5</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1.jar.sha1">SHA1</a>]
- </li>
+ <li><a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-docs.zip">struts-2.5.33-docs.zip</a>
(13MB)
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-docs.zip.asc">PGP</a>
+<a
href="https://archive.apache.org/dist/struts/2.5.33/struts-2.5.33-docs.zip.sha256">SHA256</a></li>
</ul>
</li>
-
- <li>Source:
- <ul>
- <li>
- <a
href="[preferred]struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1-source-release.zip">
-
struts2-secure-jakarta-stream-multipart-parser-plugin-1.1-source-release.zip
- </a>
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1-source-release.zip.md5">MD5</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1-source-release.zip.asc">PGP</a>]
- [<a
href="https://downloads.apache.org/struts/struts-extras/struts2-secure-jakarta-stream-multipart-parser-plugin/1.1/struts2-secure-jakarta-stream-multipart-parser-plugin-1.1-source-release.zip.sha1">SHA1</a>]
- </li>
- </ul>
- </li>
-
</ul>
<h2 id="prior-releases">Prior releases</h2>
-<p>
- If you are looking for other versions than above please check the <a
href="https://archive.apache.org/dist/struts/">Apache Archive</a> site.
-</p>
-
-<h3 id="struts1310">Struts 1.3.10</h3>
-
-<p>
- <a href="https://struts.apache.org/struts1eol-announcement.html">Struts
1.3.10 - EOL</a>
- is the latest production release of Struts 1. It is available in a full
distribution, or as
- separate library, source, example and documentation distributions.
-</p>
-<p>
- <b>Important: </b>
- <a href="struts1eol-announcement.html">Apache Struts 1 EOL Announcement</a>,
including a detailed Q/A section
-</p>
+<p>If you are looking for other versions than above please check the <a
href="https://archive.apache.org/dist/struts/">Apache Archive</a> site.</p>
<h2 id="verify">Verify the integrity of the files</h2>
-<p>
- We recommend that you verify the integrity of the downloaded files using the
PGP or MD5/SHA256 signatures.
-</p>
-
-<p>
- The PGP signatures can be verified using PGP or GPG.
- First download the
- <a href="https://downloads.apache.org/struts/KEYS">KEYS</a> as well as the
<code>asc</code>
- signature file for the particular distribution.
- Make sure you get these files from the <a
href="https://downloads.apache.org/struts/">main distribution directory,</a>
- rather than from a mirror. Then verify the signatures using
-</p>
-
-<p>
- <code>
- % pgpk -a KEYS
- <br/>
- % pgpv ${filename}.tar.gz.asc
- <br/>
- </code>
- <em>or</em>
- <br/>
- <code>
- % pgp -ka KEYS
- <br/>
- % pgp ${filename}.tar.gz.asc
- <br/>
- </code>
- <em>or</em>
- <br/>
- <code>
- % gpg --import KEYS
- <br/>
- % gpg --verify ${filename}.tar.gz.asc ${filename}.tar.gz
- </code>
-</p>
-
-<p>
- Alternatively, you can verify the MD5 signature on the files. A Unix program
called <code>md5</code>
- or <code>md5sum</code> is included in many Unix distributions. It is also
available as part of
- <a href="https://www.gnu.org/software/textutils/textutils.html"> GNU
Textutils.</a>
- Windows users can get binary md5 programs from <a
href="https://www.fourmilab.ch/md5/">here,</a>
- <a href="http://www.pc-tools.net/win32/freeware/console/"> here,</a>
- or <a href="https://www.slavasoft.com/fsum/">here.</a>
-</p>
+<p>We recommend that you verify the integrity of the downloaded files using
the PGP or MD5/SHA256 signatures.</p>
+
+<p>The PGP signatures can be verified using PGP or GPG. First download the <a
href="//downloads.apache.org/struts/KEYS">KEYS</a>
+as well as the <code>asc</code> signature file for the particular
distribution. Make sure you get these files from
+the <a href="//downloads.apache.org/struts/">main distribution directory</a>,
rather than from a mirror.
+Then verify the signatures using</p>
+
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>% pgpk -a KEYS
+% pgpv ${filename}.tar.gz.asc
+</code></pre></div></div>
+<p>or</p>
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>% pgp -ka KEYS
+% pgp ${filename}.tar.gz.asc
+</code></pre></div></div>
+<p>or</p>
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>% gpg --import KEYS
+% gpg --verify ${filename}.tar.gz.asc ${filename}.tar.gz
+</code></pre></div></div>
+
+<p>Alternatively, you can verify the MD5 signature on the files. A Unix
program called <code class="language-plaintext highlighter-rouge">md5</code> or
<code class="language-plaintext highlighter-rouge">md5sum</code> is included
+in many Unix distributions. It is also available as part of <a
href="https://www.gnu.org/software/textutils/textutils.html">GNU Textutils</a>.
+Windows users can get binary md5 programs from <a
href="https://www.fourmilab.ch/md5/">here</a>, <a
href="http://www.pc-tools.net/win32/freeware/console/">here</a>
+or <a href="https://www.slavasoft.com/fsum/">here</a>.</p>
</section>
</article>
diff --git a/content/releases.html b/content/releases.html
index 2e04ee1ad..1ed88560a 100644
--- a/content/releases.html
+++ b/content/releases.html
@@ -245,6 +245,17 @@
</tr>
</thead>
<tbody>
+ <tr>
+ <td class="no-wrap">
+ Struts 6.4.0
+ </td>
+ <td class="no-wrap">19 April 2024</td>
+ <td>
+ </td>
+ <td>
+ <a
href="https://cwiki.apache.org/confluence/display/WW/Version+Notes+6.4.0">Version
notes</a>
+ </td>
+ </tr>
<tr>
<td class="no-wrap">
Struts 6.3.0.2