[struts] branch WW-5289-executor created (now 1a3af1907)
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a change to branch WW-5289-executor in repository https://gitbox.apache.org/repos/asf/struts.git at 1a3af1907 WW-5289 Fixes creating executor to avoid locking JVM on shutdown This branch includes the following new commits: new 1a3af1907 WW-5289 Fixes creating executor to avoid locking JVM on shutdown The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[struts] 01/01: WW-5289 Fixes creating executor to avoid locking JVM on shutdown
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch WW-5289-executor in repository https://gitbox.apache.org/repos/asf/struts.git commit 1a3af1907a3d2401d75f82f9c875cb2c2ac4cccb Author: Lukasz Lenart AuthorDate: Sun Mar 26 14:11:10 2023 +0200 WW-5289 Fixes creating executor to avoid locking JVM on shutdown --- apps/showcase/src/main/resources/struts-wait.xml | 5 - .../xwork2/config/providers/StrutsDefaultConfigurationProvider.java | 4 core/src/main/java/org/apache/struts2/StrutsConstants.java | 3 +++ .../java/org/apache/struts2/config/StrutsBeanSelectionProvider.java | 3 +++ .../org/apache/struts2/interceptor/ExecuteAndWaitInterceptor.java| 5 +++-- .../org/apache/struts2/interceptor/exec/StrutsExecutorProvider.java | 2 +- core/src/main/resources/struts-beans.xml | 3 +++ 7 files changed, 21 insertions(+), 4 deletions(-) diff --git a/apps/showcase/src/main/resources/struts-wait.xml b/apps/showcase/src/main/resources/struts-wait.xml index b237dac68..23784b91f 100644 --- a/apps/showcase/src/main/resources/struts-wait.xml +++ b/apps/showcase/src/main/resources/struts-wait.xml @@ -25,7 +25,10 @@ - + + + diff --git a/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java b/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java index 1f49cc11b..2c304ec82 100644 --- a/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java +++ b/core/src/main/java/com/opensymphony/xwork2/config/providers/StrutsDefaultConfigurationProvider.java @@ -118,6 +118,8 @@ import org.apache.struts2.conversion.StrutsTypeConverterCreator; import org.apache.struts2.conversion.StrutsTypeConverterHolder; import org.apache.struts2.dispatcher.HttpParameters; import org.apache.struts2.dispatcher.Parameter; +import org.apache.struts2.interceptor.exec.ExecutorProvider; +import org.apache.struts2.interceptor.exec.StrutsExecutorProvider; import org.apache.struts2.url.QueryStringBuilder; import org.apache.struts2.url.QueryStringParser; import org.apache.struts2.url.StrutsQueryStringBuilder; @@ -242,6 +244,8 @@ public class StrutsDefaultConfigurationProvider implements ConfigurationProvider .factory(QueryStringParser.class, StrutsQueryStringParser.class, Scope.SINGLETON) .factory(UrlEncoder.class, StrutsUrlEncoder.class, Scope.SINGLETON) .factory(UrlDecoder.class, StrutsUrlDecoder.class, Scope.SINGLETON) + +.factory(ExecutorProvider.class, StrutsExecutorProvider.class, Scope.SINGLETON) ; props.setProperty(StrutsConstants.STRUTS_ENABLE_DYNAMIC_METHOD_INVOCATION, Boolean.FALSE.toString()); diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java b/core/src/main/java/org/apache/struts2/StrutsConstants.java index b6b5ca158..183c0aaf7 100644 --- a/core/src/main/java/org/apache/struts2/StrutsConstants.java +++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java @@ -463,4 +463,7 @@ public final class StrutsConstants { /** A global flag to set property {@link org.apache.struts2.components.Checkbox#setSubmitUnchecked(String)} */ public static final String STRUTS_UI_CHECKBOX_SUBMIT_UNCHECKED = "struts.ui.checkbox.submitUnchecked"; + +/** See {@link org.apache.struts2.interceptor.exec.ExecutorProvider} */ +public static final String STRUTS_EXECUTOR_PROVIDER = "struts.executor.provider"; } diff --git a/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java b/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java index 06385f28f..c80494f35 100644 --- a/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java +++ b/core/src/main/java/org/apache/struts2/config/StrutsBeanSelectionProvider.java @@ -66,6 +66,7 @@ import org.apache.struts2.dispatcher.DispatcherErrorHandler; import org.apache.struts2.dispatcher.StaticContentLoader; import org.apache.struts2.dispatcher.mapper.ActionMapper; import org.apache.struts2.dispatcher.multipart.MultiPartRequest; +import org.apache.struts2.interceptor.exec.ExecutorProvider; import org.apache.struts2.url.QueryStringBuilder; import org.apache.struts2.url.QueryStringParser; import org.apache.struts2.url.UrlDecoder; @@ -438,6 +439,8 @@ public class StrutsBeanSelectionProvider extends AbstractBeanSelectionProvider { alias(UrlEncoder.class, StrutsConstants.STRUTS_URL_ENCODER, builder, props, Scope.SINGLETON); alias(UrlDecoder.class, StrutsConstants.STRUTS_URL_DECODER, builder, props, Scope.SINGLETON); +alias(ExecutorProvider.class, StrutsConstants.STRUTS_EXECUTOR_PROVIDER, builder, props, Scope.SINGLETON); + switchDevMode(props); } diff --git a/core/src/main/java/org/apach
[struts-site] branch WW-5289-executor created (now 20812cef0)
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a change to branch WW-5289-executor in repository https://gitbox.apache.org/repos/asf/struts-site.git at 20812cef0 WW-5289 Updates docs about new extension point This branch includes the following new commits: new 20812cef0 WW-5289 Updates docs about new extension point The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[struts-site] 01/01: WW-5289 Updates docs about new extension point
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch WW-5289-executor in repository https://gitbox.apache.org/repos/asf/struts-site.git commit 20812cef065955b0e8838f164d10807253974be4 Author: Lukasz Lenart AuthorDate: Sun Mar 26 14:15:45 2023 +0200 WW-5289 Updates docs about new extension point --- source/core-developers/execute-and-wait-interceptor.md | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/source/core-developers/execute-and-wait-interceptor.md b/source/core-developers/execute-and-wait-interceptor.md index 6cc90e21d..190047da3 100644 --- a/source/core-developers/execute-and-wait-interceptor.md +++ b/source/core-developers/execute-and-wait-interceptor.md @@ -67,18 +67,19 @@ process extension, extend `ExecuteAndWaitInterceptor` and implement the `getNewB ## Using ExecutorProvider -Since Struts 6.1.1 it is possible to use your own `ExecutorProvider` to run _background tasks_. To use your own executor +Since Struts 6.2.0 it is possible to use your own `ExecutorProvider` to run _background tasks_. To use your own executor you must implement interface `org.apache.struts2.interceptor.exec.ExecutorProvider` and install the bean using `struts.xml` like follows: ```xml - -``` -Please take a look into example implementation in the Showcase App. + +``` -If no custom executor is defined, Struts will use `org.apache.struts2.interceptor.exec.StrutsExecutorProvider` by default. +Please take a look into example implementation in the Showcase App. If no custom executor has been defined, +Struts will use `org.apache.struts2.interceptor.exec.StrutsExecutorProvider` by default. ## Examples
[struts-site] branch asf-staging updated: Updates stage by Jenkins
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 30b4dd40e Updates stage by Jenkins 30b4dd40e is described below commit 30b4dd40eedf27433e669feafb6e1b2bf160 Author: jenkins AuthorDate: Sun Mar 26 12:20:29 2023 + Updates stage by Jenkins --- content/core-developers/execute-and-wait-interceptor.html | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/content/core-developers/execute-and-wait-interceptor.html b/content/core-developers/execute-and-wait-interceptor.html index 7e780851e..1aca01a79 100644 --- a/content/core-developers/execute-and-wait-interceptor.html +++ b/content/core-developers/execute-and-wait-interceptor.html @@ -206,17 +206,18 @@ process extension, extend Exe Using ExecutorProvider -Since Struts 6.1.1 it is possible to use your own ExecutorProvider to run background tasks. To use your own executor +Since Struts 6.2.0 it is possible to use your own ExecutorProvider to run background tasks. To use your own executor you must implement interface org.apache.struts2.interceptor.exec.ExecutorProvider and install the bean using struts.xml like follows: -- -Please take a look into example implementation in the Showcase App. + + -If no custom executor is defined, Struts will use org.apache.struts2.interceptor.exec.StrutsExecutorProvider by default. +Please take a look into example implementation in the Showcase App. If no custom executor has been defined, +Struts will use org.apache.struts2.interceptor.exec.StrutsExecutorProvider by default. Examples
[struts-site] 01/01: WW-5289 Updates docs about new extension point
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch WW-5289-executor in repository https://gitbox.apache.org/repos/asf/struts-site.git commit 8101dd218eeed89c449c7dc4c526f0af113b8aae Author: Lukasz Lenart AuthorDate: Sun Mar 26 14:15:45 2023 +0200 WW-5289 Updates docs about new extension point --- source/core-developers/execute-and-wait-interceptor.md | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/source/core-developers/execute-and-wait-interceptor.md b/source/core-developers/execute-and-wait-interceptor.md index 6cc90e21d..fed41ed50 100644 --- a/source/core-developers/execute-and-wait-interceptor.md +++ b/source/core-developers/execute-and-wait-interceptor.md @@ -67,18 +67,19 @@ process extension, extend `ExecuteAndWaitInterceptor` and implement the `getNewB ## Using ExecutorProvider -Since Struts 6.1.1 it is possible to use your own `ExecutorProvider` to run _background tasks_. To use your own executor +Since Struts 6.2.0 it is possible to use your own `ExecutorProvider` to run _background tasks_. To use your own executor you must implement interface `org.apache.struts2.interceptor.exec.ExecutorProvider` and install the bean using `struts.xml` like follows: ```xml - -``` -Please take a look into example implementation in the Showcase App. + +``` -If no custom executor is defined, Struts will use `org.apache.struts2.interceptor.exec.StrutsExecutorProvider` by default. +Please take a look into example implementation in the Showcase App. If no custom executor has been defined, +Struts will use `org.apache.struts2.interceptor.exec.StrutsExecutorProvider` by default. ## Examples
[struts-site] branch WW-5289-executor updated (20812cef0 -> 8101dd218)
This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a change to branch WW-5289-executor in repository https://gitbox.apache.org/repos/asf/struts-site.git discard 20812cef0 WW-5289 Updates docs about new extension point new 8101dd218 WW-5289 Updates docs about new extension point This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (20812cef0) \ N -- N -- N refs/heads/WW-5289-executor (8101dd218) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: source/core-developers/execute-and-wait-interceptor.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
[struts-site] branch asf-staging updated: Updates stage by Jenkins
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 d090dc50d Updates stage by Jenkins d090dc50d is described below commit d090dc50d154e2040960ce746799da9df91f4923 Author: jenkins AuthorDate: Sun Mar 26 12:29:26 2023 + Updates stage by Jenkins --- content/core-developers/execute-and-wait-interceptor.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/core-developers/execute-and-wait-interceptor.html b/content/core-developers/execute-and-wait-interceptor.html index 1aca01a79..dac520389 100644 --- a/content/core-developers/execute-and-wait-interceptor.html +++ b/content/core-developers/execute-and-wait-interceptor.html @@ -213,7 +213,7 @@ like follows:- + Please take a look into example implementation in the Showcase App. If no custom executor has been defined,
[struts-examples] branch dependabot/maven/org.springframework-spring-web-6.0.7 created (now d8911be)
This is an automated email from the ASF dual-hosted git repository. github-bot pushed a change to branch dependabot/maven/org.springframework-spring-web-6.0.7 in repository https://gitbox.apache.org/repos/asf/struts-examples.git at d8911be Bump spring-web from 5.3.23 to 6.0.7 No new revisions were added by this update.
[struts-examples] branch dependabot/github_actions/actions/checkout-3.5.0 created (now 9149ec8)
This is an automated email from the ASF dual-hosted git repository. github-bot pushed a change to branch dependabot/github_actions/actions/checkout-3.5.0 in repository https://gitbox.apache.org/repos/asf/struts-examples.git at 9149ec8 Bump actions/checkout from 3.4.0 to 3.5.0 No new revisions were added by this update.
[struts-examples] branch master updated (aba1b94 -> 0892cd0)
This is an automated email from the ASF dual-hosted git repository. github-bot pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/struts-examples.git from aba1b94 Merge pull request #227 from apache/dependabot/github_actions/actions/cache-3.3.1 add 9149ec8 Bump actions/checkout from 3.4.0 to 3.5.0 new 0892cd0 Merge pull request #230 from apache/dependabot/github_actions/actions/checkout-3.5.0 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .github/workflows/maven.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
[struts-examples] 01/01: Merge pull request #230 from apache/dependabot/github_actions/actions/checkout-3.5.0
This is an automated email from the ASF dual-hosted git repository. github-bot pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/struts-examples.git commit 0892cd0368d7df46220da8448c31a5c7a9407902 Merge: aba1b94 9149ec8 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> AuthorDate: Mon Mar 27 01:32:14 2023 + Merge pull request #230 from apache/dependabot/github_actions/actions/checkout-3.5.0 Bump actions/checkout from 3.4.0 to 3.5.0 .github/workflows/maven.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)