svn commit: r51868 - /dev/struts/2.5.28.3/ /release/struts/2.5.28.3/
Author: lukaszlenart Date: Sun Jan 2 11:15:05 2022 New Revision: 51868 Log: Apache Struts 2.5.28.3 is out Added: release/struts/2.5.28.3/ - copied from r51867, dev/struts/2.5.28.3/ Removed: dev/struts/2.5.28.3/
[struts-site] branch master updated: Adds announcement about Struts 2.5.28.3
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/struts-site.git The following commit(s) were added to refs/heads/master by this push: new 8a4711c Adds announcement about Struts 2.5.28.3 8a4711c is described below commit 8a4711c4d42dded1e21a467d5028777acb9ccf81 Author: Lukasz Lenart AuthorDate: Sun Jan 2 12:20:24 2022 +0100 Adds announcement about Struts 2.5.28.3 --- _config.yml | 8 source/announce-2022.md | 51 + source/index.html | 2 +- 3 files changed, 56 insertions(+), 5 deletions(-) diff --git a/_config.yml b/_config.yml index c2a35d9..1d3025e 100644 --- a/_config.yml +++ b/_config.yml @@ -9,15 +9,15 @@ kramdown: syntax_highlighter: rouge # Simplifies introducing changes related to the latest release -current_version: 2.5.28.2 -current_version_short: 25282 +current_version: 2.5.28.3 +current_version_short: 25283 prev_version: 2.3.37 prev_version_short: 2337 archetype_version: 2.5.22 current_beta_version: 2.5-BETA3 current_beta_version_short: 25B3 -release_date: 23 December 2021 -release_date_short: 20211223 +release_date: 02 January 2022 +release_date_short: 20220102 prev_release_date: 30 December 2018 prev_release_date_short: 20181230 beta_release_date_short: 20160126 diff --git a/source/announce-2022.md b/source/announce-2022.md new file mode 100644 index 000..13d6aef --- /dev/null +++ b/source/announce-2022.md @@ -0,0 +1,51 @@ +--- +layout: default +title: Announcements 2022 +--- + +# Announcements 2022 +{:.no_toc} + +* Will be replaced with the ToC, excluding a header +{:toc} + + + Skip to: Announcements - 2021 + + + 02 January 2022 - Struts 2.5.28.3 General Availability {#a20220102} + +The Apache Struts group is pleased to announce that Struts 2.5.28.3 is available as a "General Availability" +release. The GA designation is our highest quality grade. + +This release addresses Log4j vulnerability [CVE-2021-44832](https://logging.apache.org/log4j/2.x/security.html#CVE-2021-44832) +by using the latest Log4j ver. 2.12.4 (Java 1.7 compatible). + +**Please note, that the Apache Struts itself depends on the `log4j-api` package only, it's users' responsibility +to use a proper version of the log4j-core package!** + +> Please read the [Version Notes]({{ site.wiki_url }}/Version+Notes+2.5.28.2) to find more details about performed +> bug fixes and improvements. + +Apache Struts 2 is an elegant, extensible framework for creating enterprise-ready Java web applications. +The framework has been designed to streamline the full development cycle, from building, to deploying, +to maintaining applications over time. + +**All developers are strongly advised to perform this upgrade.** + +The 2.5.x series of the Apache Struts framework has a minimum requirement of the following specification versions: +Servlet API 2.4, JSP API 2.0, and Java 7. + +Should any issues arise with your use of any version of the Struts framework, please post your comments to the user list, +and, if appropriate, file [a tracking ticket]({{ site.jira_url }}). + +You can download this version from our [download](download.cgi#struts-ga) page. + + + Skip to: Announcements - 2021 + + + + Next: + Kickstart FAQ + diff --git a/source/index.html b/source/index.html index 4b236a8..b297d11 100644 --- a/source/index.html +++ b/source/index.html @@ -27,7 +27,7 @@ title: Welcome to the Apache Struts project Apache Struts {{ site.current_version }} GA has been releasedon {{ site.release_date }}. -Read more in Announcement or in +Read more in Announcement or in Version notes
[struts-site] branch asf-site updated: Automatic Site Publish by Buildbot
This is an automated email from the ASF dual-hosted git repository. git-site-role pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/struts-site.git The following commit(s) were added to refs/heads/asf-site by this push: new c370100 Automatic Site Publish by Buildbot c370100 is described below commit c370100fc23c74f02036b9153eb768c518d6dc09 Author: buildbot AuthorDate: Sun Jan 2 11:21:08 2022 + Automatic Site Publish by Buildbot --- output/{index.html => announce-2022.html} | 152 +++--- output/download.html | 44 - output/index.html | 10 +- output/releases.html | 2 +- 4 files changed, 82 insertions(+), 126 deletions(-) diff --git a/output/index.html b/output/announce-2022.html similarity index 62% copy from output/index.html copy to output/announce-2022.html index 29bade0..a10a294 100644 --- a/output/index.html +++ b/output/announce-2022.html @@ -7,11 +7,13 @@ - Welcome to the Apache Struts project + Announcements 2022 + + @@ -122,104 +124,58 @@ - - - - -Apache Struts -Apache Struts is a free, open-source, MVC framework for creating elegant, - modern Java web applications. It favors convention over configuration, is - extensible using a plugin architecture, and ships with plugins to support - REST, AJAX and JSON. - - - Download - - - Technology Primer - - - - - - - -Apache Struts 2.5.28.2 GA - - Apache Struts 2.5.28.2 GA has been releasedon 23 December 2021. - -Read more in Announcement or in -https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.28.2";>Version notes - - -Security Advice on Log4j 2.12.2/2.16.0 - - The Apache Struts Security team would like to announce that all the users using - the latest Struts 2.5.x series should either upgrade to Apache Struts 2.5.28.1 which - uses Log4j 2.12.2 version that addresses https://logging.apache.org/log4j/2.x/security.html#CVE-2021-45046";>CVE-2021-45046 - or upgrade Log4j to version 2.12.2 (when running on Java 1.7) or 2.16.0 (when running on Java 8+). - Read more in Announcement - - - -Google's Patch Reward program -During http://www.meetup.com/sfhtml5/";>SFHTML5 Google announced that - they extend their program to cover the Apache Struts project as well. Now you can earn - money preparing patches for us! - read more - - - - - -Apache Struts 2.3.x EOL - - The Apache Struts Team informs about discontinuing support for Struts 2.3.x branch, we recommend migration - to the latest version of Struts, read more in - Announcement - - - -Apache Struts 2.3.37 GA - - It's the latest release of Struts 2.3.x which contains the latest security fixes, - released on 30 December 2018. Read more in Announcement or in - https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.3.37";>Version notes - - - -Immediately upgrade commons-fileupload to version 1.3.3 - - The Apache Struts Team recommends to immediately upgrade your Struts 2 - based projects to use the latest released version of Commons - FileUpload library, which is currently 1.3.3. - Announcement - - - - - - - - - Keep in touch: + + +https://github.com/apache/struts-site/edit/master/source/announce-2022.md"; title="Edit this page on GitHub">Edit on GitHub + +Announcements 2022 - - IRC: #struts - -https://www.facebook.com/apachestruts"; data-width="250" data-layout="button_count" - data-action="like" data-show-faces="false" data-share="true" class="fb-like"> - - -http://struts.apache.org/"; - class="g-plusone"> - - https://twitter.com/TheApacheStruts"; data-show-count="false" data-lang="en" - data-width="240px" data-align="left" class="twitter-follow-button">Follow -@TheApacheStruts - - - + + 02 January 2022 - Struts 2.5.28.3 General Availability + + + + Skip to: Announcements - 2021 + + +02 January 2022 - Struts 2.5.28.3 General Availability + +The Apache Struts group is pleased to announce that Struts 2.5.28.3 is available as a “General Availability” +release. The GA designation is our highest quality grade. + +This release addresses Log4j vulnerability https://logging.apache.org/log4j/2.x/security.html#CVE-2021-44832";>CVE-2021-44832 +by using the latest Log4j ver. 2.12.4 (Java 1.7 compatible). + +Please note, that the Apache Struts itself depe
[struts-site] branch master updated: Adds a note about new struts.i18n.search.defaultbundles.first flag
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/struts-site.git The following commit(s) were added to refs/heads/master by this push: new 4c5d413 Adds a note about new struts.i18n.search.defaultbundles.first flag 4c5d413 is described below commit 4c5d4130e5dd9113a408f0c3afd0d6b34756a2e0 Author: Lukasz Lenart AuthorDate: Sun Jan 2 14:49:52 2022 +0100 Adds a note about new struts.i18n.search.defaultbundles.first flag --- source/core-developers/localization.md | 39 +++--- 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/source/core-developers/localization.md b/source/core-developers/localization.md index 86f4a76..d0728b4 100644 --- a/source/core-developers/localization.md +++ b/source/core-developers/localization.md @@ -14,8 +14,9 @@ title: Localization The framework supports internationalization (i18n) in the following places: 1. the _UI Tags_ -2. Messages and Errors from the [ValidationAware](http://struts.apache.org/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ValidationAware) -3. Within action classes that extend [ActionSupport](http://struts.apache.org/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ActionSupport) through the `getText()` method +2. Messages and Errors from the [ValidationAware](http://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ValidationAware) +3. Within action classes that extend [ActionSupport](http://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ActionSupport) + through the `getText()` method ## Resource Bundle Search Order @@ -29,8 +30,8 @@ Resource bundles are searched in the following order: 6. search up the i18n message key hierarchy itself 7. global resource properties -This is how it is implemented in a default implementation of the `LocalizedTextProvider` interface. You can provide your -own implementation using `TextProvider` and `TextProviderFactory` interfaces. +This is how it is implemented in a default implementation of the `LocalizedTextProvider` interface. You can provide your +own implementation using `TextProvider` and `TextProviderFactory` interfaces. To clarify #5, while traversing the package hierarchy, Struts 2 will look for a file `package.properties`: @@ -57,11 +58,11 @@ If you configure action as follow ``` -it will use a default class defined with `default-class-ref` in `struts-default.xml` which is +it will use a default class defined with `default-class-ref` in `struts-default.xml` which is `com.opensymphony.xwork2.ActionSupport`. It means you have two options here to get I18N working in that case: -- define `com/opensymphony/xwork2/ActionSupport.properties` and put messages there -- point `default-class-ref` to your base class and then defined appropriated `.properties` file (corresponding to +- define `com/opensymphony/xwork2/ActionSupport.properties` and put messages there +- point `default-class-ref` to your base class and then defined appropriated `.properties` file (corresponding to class' name or package) ## Examples @@ -136,11 +137,24 @@ class, and you may end up with duplicated messages in those resource bundles. A called ActionSupport.properties in com/opensymphony/xwork2 and put it on your classpath. This will only work well if all your actions subclass XWork2's ActionSupport. +## Search in default bundles first + +Since Struts 2.6 it is possible to enable searching in default bundles first instead of performing a full class hierarchy +scan and then default bundles. + +By setting the below flag to `true` the default implementation of [LocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/LocalizedTextProvider.html) +(which is [StrutsLocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.html)) +will search the default bundles first. In some cases this can improve overall application performance. + +```xml + +``` + ## Using only global bundles If you don't need to use the package-scan-functionality and only base on the global bundles (those provided by -the framework and via `struts.custom.i18n.resources`) you can use existing `GlobalLocalizedTextProvider` -implementation. To use this please define the following option in your `struts.xml`: +the framework and via `struts.custom.i18n.resources`) you can use existing [GlobalLocalizedTextProvider](https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.html) +implementation. To use this please define the following option in your `struts.xml`: ```xml @@ -148,8 +162,9 @@ implementation. To use this please define the following option in your `struts. ## Cu
[struts-site] branch asf-site updated: Automatic Site Publish by Buildbot
This is an automated email from the ASF dual-hosted git repository. git-site-role pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/struts-site.git The following commit(s) were added to refs/heads/asf-site by this push: new 1b18619 Automatic Site Publish by Buildbot 1b18619 is described below commit 1b186198be7201418d0c856ceecda411853f2f8d Author: buildbot AuthorDate: Sun Jan 2 13:50:33 2022 + Automatic Site Publish by Buildbot --- output/core-developers/localization.html | 41 ++-- 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/output/core-developers/localization.html b/output/core-developers/localization.html index 85c203c..f304d39 100644 --- a/output/core-developers/localization.html +++ b/output/core-developers/localization.html @@ -145,6 +145,7 @@ Global Resources (struts.custom.i18n.resources) in struts.properties Formatting Dates and Numbers Comparison with Struts 1 + Search in default bundles first Using only global bundles Custom TextProvider and TextProviderFactory @@ -155,8 +156,9 @@ the UI Tags - Messages and Errors from the http://struts.apache.org/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ValidationAware";>ValidationAware - Within action classes that extend http://struts.apache.org/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ActionSupport";>ActionSupport through the getText() method + Messages and Errors from the http://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ValidationAware";>ValidationAware + Within action classes that extend http://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/ActionSupport";>ActionSupport +through the getText() method Resource Bundle Search Order @@ -173,8 +175,8 @@ global resource properties -This is how it is implemented in a default implementation of the LocalizedTextProvider interface. You can provide your -own implementation using TextProvider and TextProviderFactory interfaces. +This is how it is implemented in a default implementation of the LocalizedTextProvider interface. You can provide your +own implementation using TextProvider and TextProviderFactory interfaces. To clarify #5, while traversing the package hierarchy, Struts 2 will look for a file package.properties: @@ -201,12 +203,12 @@ own implementation using TextProvider and -it will use a default class defined with default-class-ref in struts-default.xml which is +it will use a default class defined with default-class-ref in struts-default.xml which is com.opensymphony.xwork2.ActionSupport. It means you have two options here to get I18N working in that case: - define com/opensymphony/xwork2/ActionSupport.properties and put messages there - point default-class-ref to your base class and then defined appropriated .properties file (corresponding to + define com/opensymphony/xwork2/ActionSupport.properties and put messages there + point default-class-ref to your base class and then defined appropriated .properties file (corresponding to class’ name or package) @@ -278,22 +280,37 @@ class, and you may end up with duplicated messages in those resource bundles. A called ActionSupport.properties in com/opensymphony/xwork2 and put it on your classpath. This will only work well if all your actions subclass XWork2’s ActionSupport. +Search in default bundles first + +Since Struts 2.6 it is possible to enable searching in default bundles first instead of performing a full class hierarchy +scan and then default bundles. + +By setting the below flag to true the default implementation of https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/LocalizedTextProvider.html";>LocalizedTextProvider +(which is https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/util/StrutsLocalizedTextProvider.html";>StrutsLocalizedTextProvider) +will search the default bundles first. In some cases this can improve overall application performance. + ++ + Using only global bundles If you don’t need to use the package-scan-functionality and only base on the global bundles (those provided by -the framework and via struts.custom.i18n.resources) you can use existing GlobalLocalizedTextProvider -implementation. To use this please define the following option in your struts.xml: +the framework and via struts.custom.i18n.resources) you can use existing https://struts.apache.org/maven/struts2-core/apidocs/index.html?com/opensymphony/xwork2/util/GlobalLocalizedTextProvider.html";>GlobalLocalizedTextProvider +implementation. To use this please define the following option in your struts.xml: Custom TextProvider and TextProviderFactory -
[struts-site] branch master updated: Adds a link to JIRA ticket with more details about struts.i18n.search.defaultbundles.first flag
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/struts-site.git The following commit(s) were added to refs/heads/master by this push: new 78c75d2 Adds a link to JIRA ticket with more details about struts.i18n.search.defaultbundles.first flag 78c75d2 is described below commit 78c75d25b5b0d6efe9e5a7b395664c609b8a460e Author: Lukasz Lenart AuthorDate: Sun Jan 2 14:54:04 2022 +0100 Adds a link to JIRA ticket with more details about struts.i18n.search.defaultbundles.first flag --- source/core-developers/localization.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/core-developers/localization.md b/source/core-developers/localization.md index d0728b4..2f302e4 100644 --- a/source/core-developers/localization.md +++ b/source/core-developers/localization.md @@ -150,6 +150,8 @@ will search the default bundles first. In some cases this can improve overall ap ``` +> More details can be found in [WW-5112](https://issues.apache.org/jira/browse/WW-5112) and the linked PR. + ## Using only global bundles If you don't need to use the package-scan-functionality and only base on the global bundles (those provided by
[struts-site] branch asf-site updated: Automatic Site Publish by Buildbot
This is an automated email from the ASF dual-hosted git repository. git-site-role pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/struts-site.git The following commit(s) were added to refs/heads/asf-site by this push: new cc09830 Automatic Site Publish by Buildbot cc09830 is described below commit cc098307de324da513b83736d078b09b10053456 Author: buildbot AuthorDate: Sun Jan 2 13:54:32 2022 + Automatic Site Publish by Buildbot --- output/core-developers/localization.html | 4 1 file changed, 4 insertions(+) diff --git a/output/core-developers/localization.html b/output/core-developers/localization.html index f304d39..8afdbc6 100644 --- a/output/core-developers/localization.html +++ b/output/core-developers/localization.html @@ -292,6 +292,10 @@ will search the default bundles first. In some cases this can improve overall ap+ + More details can be found in https://issues.apache.org/jira/browse/WW-5112";>WW-5112 and the linked PR. + + Using only global bundles If you don’t need to use the package-scan-functionality and only base on the global bundles (those provided by