[jira] [Commented] (WW-5238) Strict Method Invocation (SMI) too strict or wrong ActionMapping?
[ https://issues.apache.org/jira/browse/WW-5238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17612629#comment-17612629 ] Daniel Wu commented on WW-5238: --- FYI. The action mapping remains the same in this v6.0.3 upgrade compares to the upgrade from v2.5 to v6.0.0. > Strict Method Invocation (SMI) too strict or wrong ActionMapping? > - > > Key: WW-5238 > URL: https://issues.apache.org/jira/browse/WW-5238 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 6.0.3 >Reporter: Daniel Wu >Priority: Blocker > Fix For: 6.1.0 > > Attachments: ex1.PNG, ex2.PNG, results_after_clicking_add_button.PNG > > > Got the following error (Error No. 2) when trying to create one record. The > prompt method is not supposed to be invoked for aSbmt1. Before that, the > aSbmt1 was not accepted (Error No. 1). I tried several ways to try to > overwrite the regular expression without success. Was something strange > introduced into the Struts 2 version 6.0.3? Is Strict Method Invocation (SMI) > in a dead loop? I am surprised at that there is no issue reported for the > Struts 2 version 6.0.3 yet. > 1. com.opensymphony.xwork2.interceptor.ParametersInterceptor - > *{color:#ff}Parameter [action:aSbmt1] didn't match accepted > pattern{color}* > [[\w+((\.\w+)|(\[\d+])|((\d+))|(['(\w-?|[\u4e00-\u9fa5]{-}?){+}'])|(('(\w{+}{-}?|[\u4e00-\u9fa5]-?)')))*]]! > See Accepted / Excluded patterns at > [https://struts.apache.org/security/#accepted--excluded-patterns] > *{color:#ff}2. com.opensymphony.xwork2.config.ConfigurationException: > Method prompt for action aSbmt1 is not allowed!{color}* > at > com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:191) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:57) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:32) > ~[struts2-core-6.0.3.jar:6.0.3] > at > com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:60) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.createActionProxy(Dispatcher.java:673) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.prepareActionProxy(Dispatcher.java:658) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:621) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140) > ~[struts2-core-6.0.3.jar:6.0.3] > at > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) ~ -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (WW-5238) Strict Method Invocation (SMI) too strict or wrong ActionMapping?
[ https://issues.apache.org/jira/browse/WW-5238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17612605#comment-17612605 ] Lukasz Lenart commented on WW-5238: --- These screens don't help, could you share Struts config for those actions? > Strict Method Invocation (SMI) too strict or wrong ActionMapping? > - > > Key: WW-5238 > URL: https://issues.apache.org/jira/browse/WW-5238 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 6.0.3 >Reporter: Daniel Wu >Priority: Blocker > Fix For: 6.1.0 > > Attachments: ex1.PNG, ex2.PNG, results_after_clicking_add_button.PNG > > > Got the following error (Error No. 2) when trying to create one record. The > prompt method is not supposed to be invoked for aSbmt1. Before that, the > aSbmt1 was not accepted (Error No. 1). I tried several ways to try to > overwrite the regular expression without success. Was something strange > introduced into the Struts 2 version 6.0.3? Is Strict Method Invocation (SMI) > in a dead loop? I am surprised at that there is no issue reported for the > Struts 2 version 6.0.3 yet. > 1. com.opensymphony.xwork2.interceptor.ParametersInterceptor - > *{color:#ff}Parameter [action:aSbmt1] didn't match accepted > pattern{color}* > [[\w+((\.\w+)|(\[\d+])|((\d+))|(['(\w-?|[\u4e00-\u9fa5]{-}?){+}'])|(('(\w{+}{-}?|[\u4e00-\u9fa5]-?)')))*]]! > See Accepted / Excluded patterns at > [https://struts.apache.org/security/#accepted--excluded-patterns] > *{color:#ff}2. com.opensymphony.xwork2.config.ConfigurationException: > Method prompt for action aSbmt1 is not allowed!{color}* > at > com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:191) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:57) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:32) > ~[struts2-core-6.0.3.jar:6.0.3] > at > com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:60) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.createActionProxy(Dispatcher.java:673) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.prepareActionProxy(Dispatcher.java:658) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:621) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140) > ~[struts2-core-6.0.3.jar:6.0.3] > at > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) ~ -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (WW-5238) Strict Method Invocation (SMI) too strict or wrong ActionMapping?
[ https://issues.apache.org/jira/browse/WW-5238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17612600#comment-17612600 ] Daniel Wu commented on WW-5238: --- !ex1.PNG! !ex2.PNG! !results_after_clicking_add_button.PNG! > Strict Method Invocation (SMI) too strict or wrong ActionMapping? > - > > Key: WW-5238 > URL: https://issues.apache.org/jira/browse/WW-5238 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 6.0.3 >Reporter: Daniel Wu >Priority: Blocker > Fix For: 6.1.0 > > Attachments: ex1.PNG, ex2.PNG, results_after_clicking_add_button.PNG > > > Got the following error (Error No. 2) when trying to create one record. The > prompt method is not supposed to be invoked for aSbmt1. Before that, the > aSbmt1 was not accepted (Error No. 1). I tried several ways to try to > overwrite the regular expression without success. Was something strange > introduced into the Struts 2 version 6.0.3? Is Strict Method Invocation (SMI) > in a dead loop? I am surprised at that there is no issue reported for the > Struts 2 version 6.0.3 yet. > 1. com.opensymphony.xwork2.interceptor.ParametersInterceptor - > *{color:#ff}Parameter [action:aSbmt1] didn't match accepted > pattern{color}* > [[\w+((\.\w+)|(\[\d+])|((\d+))|(['(\w-?|[\u4e00-\u9fa5]{-}?){+}'])|(('(\w{+}{-}?|[\u4e00-\u9fa5]-?)')))*]]! > See Accepted / Excluded patterns at > [https://struts.apache.org/security/#accepted--excluded-patterns] > *{color:#ff}2. com.opensymphony.xwork2.config.ConfigurationException: > Method prompt for action aSbmt1 is not allowed!{color}* > at > com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:191) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:57) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:32) > ~[struts2-core-6.0.3.jar:6.0.3] > at > com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:60) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.createActionProxy(Dispatcher.java:673) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.prepareActionProxy(Dispatcher.java:658) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:621) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140) > ~[struts2-core-6.0.3.jar:6.0.3] > at > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) ~ -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (WW-5238) Strict Method Invocation (SMI) too strict or wrong ActionMapping?
[ https://issues.apache.org/jira/browse/WW-5238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Wu updated WW-5238: -- Attachment: results_after_clicking_add_button.PNG > Strict Method Invocation (SMI) too strict or wrong ActionMapping? > - > > Key: WW-5238 > URL: https://issues.apache.org/jira/browse/WW-5238 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 6.0.3 >Reporter: Daniel Wu >Priority: Blocker > Fix For: 6.1.0 > > Attachments: ex1.PNG, ex2.PNG, results_after_clicking_add_button.PNG > > > Got the following error (Error No. 2) when trying to create one record. The > prompt method is not supposed to be invoked for aSbmt1. Before that, the > aSbmt1 was not accepted (Error No. 1). I tried several ways to try to > overwrite the regular expression without success. Was something strange > introduced into the Struts 2 version 6.0.3? Is Strict Method Invocation (SMI) > in a dead loop? I am surprised at that there is no issue reported for the > Struts 2 version 6.0.3 yet. > 1. com.opensymphony.xwork2.interceptor.ParametersInterceptor - > *{color:#ff}Parameter [action:aSbmt1] didn't match accepted > pattern{color}* > [[\w+((\.\w+)|(\[\d+])|((\d+))|(['(\w-?|[\u4e00-\u9fa5]{-}?){+}'])|(('(\w{+}{-}?|[\u4e00-\u9fa5]-?)')))*]]! > See Accepted / Excluded patterns at > [https://struts.apache.org/security/#accepted--excluded-patterns] > *{color:#ff}2. com.opensymphony.xwork2.config.ConfigurationException: > Method prompt for action aSbmt1 is not allowed!{color}* > at > com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:191) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:57) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:32) > ~[struts2-core-6.0.3.jar:6.0.3] > at > com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:60) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.createActionProxy(Dispatcher.java:673) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.prepareActionProxy(Dispatcher.java:658) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:621) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140) > ~[struts2-core-6.0.3.jar:6.0.3] > at > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) ~ -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (WW-5238) Strict Method Invocation (SMI) too strict or wrong ActionMapping?
[ https://issues.apache.org/jira/browse/WW-5238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Wu updated WW-5238: -- Attachment: ex2.PNG > Strict Method Invocation (SMI) too strict or wrong ActionMapping? > - > > Key: WW-5238 > URL: https://issues.apache.org/jira/browse/WW-5238 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 6.0.3 >Reporter: Daniel Wu >Priority: Blocker > Fix For: 6.1.0 > > Attachments: ex1.PNG, ex2.PNG > > > Got the following error (Error No. 2) when trying to create one record. The > prompt method is not supposed to be invoked for aSbmt1. Before that, the > aSbmt1 was not accepted (Error No. 1). I tried several ways to try to > overwrite the regular expression without success. Was something strange > introduced into the Struts 2 version 6.0.3? Is Strict Method Invocation (SMI) > in a dead loop? I am surprised at that there is no issue reported for the > Struts 2 version 6.0.3 yet. > 1. com.opensymphony.xwork2.interceptor.ParametersInterceptor - > *{color:#ff}Parameter [action:aSbmt1] didn't match accepted > pattern{color}* > [[\w+((\.\w+)|(\[\d+])|((\d+))|(['(\w-?|[\u4e00-\u9fa5]{-}?){+}'])|(('(\w{+}{-}?|[\u4e00-\u9fa5]-?)')))*]]! > See Accepted / Excluded patterns at > [https://struts.apache.org/security/#accepted--excluded-patterns] > *{color:#ff}2. com.opensymphony.xwork2.config.ConfigurationException: > Method prompt for action aSbmt1 is not allowed!{color}* > at > com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:191) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:57) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:32) > ~[struts2-core-6.0.3.jar:6.0.3] > at > com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:60) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.createActionProxy(Dispatcher.java:673) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.prepareActionProxy(Dispatcher.java:658) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:621) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140) > ~[struts2-core-6.0.3.jar:6.0.3] > at > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) ~ -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (WW-5238) Strict Method Invocation (SMI) too strict or wrong ActionMapping?
[ https://issues.apache.org/jira/browse/WW-5238?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Wu updated WW-5238: -- Attachment: ex1.PNG > Strict Method Invocation (SMI) too strict or wrong ActionMapping? > - > > Key: WW-5238 > URL: https://issues.apache.org/jira/browse/WW-5238 > Project: Struts 2 > Issue Type: Bug > Components: Core >Affects Versions: 6.0.3 >Reporter: Daniel Wu >Priority: Blocker > Fix For: 6.1.0 > > Attachments: ex1.PNG, ex2.PNG > > > Got the following error (Error No. 2) when trying to create one record. The > prompt method is not supposed to be invoked for aSbmt1. Before that, the > aSbmt1 was not accepted (Error No. 1). I tried several ways to try to > overwrite the regular expression without success. Was something strange > introduced into the Struts 2 version 6.0.3? Is Strict Method Invocation (SMI) > in a dead loop? I am surprised at that there is no issue reported for the > Struts 2 version 6.0.3 yet. > 1. com.opensymphony.xwork2.interceptor.ParametersInterceptor - > *{color:#ff}Parameter [action:aSbmt1] didn't match accepted > pattern{color}* > [[\w+((\.\w+)|(\[\d+])|((\d+))|(['(\w-?|[\u4e00-\u9fa5]{-}?){+}'])|(('(\w{+}{-}?|[\u4e00-\u9fa5]-?)')))*]]! > See Accepted / Excluded patterns at > [https://struts.apache.org/security/#accepted--excluded-patterns] > *{color:#ff}2. com.opensymphony.xwork2.config.ConfigurationException: > Method prompt for action aSbmt1 is not allowed!{color}* > at > com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:191) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:57) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:32) > ~[struts2-core-6.0.3.jar:6.0.3] > at > com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:60) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.createActionProxy(Dispatcher.java:673) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.prepareActionProxy(Dispatcher.java:658) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:621) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) > ~[struts2-core-6.0.3.jar:6.0.3] > at > org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:140) > ~[struts2-core-6.0.3.jar:6.0.3] > at > weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) ~ -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (WW-3691) BackgroundProcess should use a java.util.concurrent.Executor alternatively to spawning a new thread
[ https://issues.apache.org/jira/browse/WW-3691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17612543#comment-17612543 ] ASF subversion and git services commented on WW-3691: - Commit 8dd76311f17d95c45b484b01aadbac32b586abc7 in struts's branch refs/heads/WW-3691-executor from Lukasz Lenart [ https://gitbox.apache.org/repos/asf?p=struts.git;h=8dd76311f ] WW-3691 Converts BackgroundProcess into interface and uses Executor to execute BackgroundProcess > BackgroundProcess should use a java.util.concurrent.Executor alternatively to > spawning a new thread > --- > > Key: WW-3691 > URL: https://issues.apache.org/jira/browse/WW-3691 > Project: Struts 2 > Issue Type: Improvement > Components: Core Interceptors >Affects Versions: 2.2.3.1 >Reporter: Falko Modler >Assignee: Lukasz Lenart >Priority: Major > Fix For: 6.1.0 > > Attachments: WW-3691.patch, WW-3691_core.txt, WW-3691_showcase.txt > > > Every new instance of org.apache.struts2.interceptor.BackgroundProcess spawns > a new Thread (see constructor), no thread pooling is used. > Besides problems in environments where some container might need to manage > the creation of threads, this issue also prevents certain > performance/efficiency optimizations via ThreadLocal from taking full effect. > E.g.: We use ThreadLocals for Random and SimpleDateFormat and those thread > local instances "are lost" when a new Thread is created. > Therefore BackgroundProcess should be given a new constructor that takes a > java.util.concurrent.Executor instance that is used to execute the Runnable. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (WW-3691) BackgroundProcess should use a java.util.concurrent.Executor alternatively to spawning a new thread
[ https://issues.apache.org/jira/browse/WW-3691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17612521#comment-17612521 ] ASF subversion and git services commented on WW-3691: - Commit d4bf8b99109a7db97d5e3f18a800a56e6e8b6df1 in struts's branch refs/heads/WW-3691-executor from Lukasz Lenart [ https://gitbox.apache.org/repos/asf?p=struts.git;h=d4bf8b991 ] WW-3691 Converts BackgroundProcess into interface and uses Executor to execute BackgroundProcess > BackgroundProcess should use a java.util.concurrent.Executor alternatively to > spawning a new thread > --- > > Key: WW-3691 > URL: https://issues.apache.org/jira/browse/WW-3691 > Project: Struts 2 > Issue Type: Improvement > Components: Core Interceptors >Affects Versions: 2.2.3.1 >Reporter: Falko Modler >Assignee: Lukasz Lenart >Priority: Major > Fix For: 6.1.0 > > Attachments: WW-3691.patch, WW-3691_core.txt, WW-3691_showcase.txt > > > Every new instance of org.apache.struts2.interceptor.BackgroundProcess spawns > a new Thread (see constructor), no thread pooling is used. > Besides problems in environments where some container might need to manage > the creation of threads, this issue also prevents certain > performance/efficiency optimizations via ThreadLocal from taking full effect. > E.g.: We use ThreadLocals for Random and SimpleDateFormat and those thread > local instances "are lost" when a new Thread is created. > Therefore BackgroundProcess should be given a new constructor that takes a > java.util.concurrent.Executor instance that is used to execute the Runnable. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (WW-3691) BackgroundProcess should use a java.util.concurrent.Executor alternatively to spawning a new thread
[ https://issues.apache.org/jira/browse/WW-3691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17612510#comment-17612510 ] ASF subversion and git services commented on WW-3691: - Commit 47398e8a784deb9a71e5f84ddfc3dbe1e5f2f8d4 in struts's branch refs/heads/WW-3691-executor from Lukasz Lenart [ https://gitbox.apache.org/repos/asf?p=struts.git;h=47398e8a7 ] WW-3691 Converts BackgroundProcess into interface and uses Executor to execute BackgroundProcess > BackgroundProcess should use a java.util.concurrent.Executor alternatively to > spawning a new thread > --- > > Key: WW-3691 > URL: https://issues.apache.org/jira/browse/WW-3691 > Project: Struts 2 > Issue Type: Improvement > Components: Core Interceptors >Affects Versions: 2.2.3.1 >Reporter: Falko Modler >Assignee: Lukasz Lenart >Priority: Major > Fix For: 6.1.0 > > Attachments: WW-3691.patch, WW-3691_core.txt, WW-3691_showcase.txt > > > Every new instance of org.apache.struts2.interceptor.BackgroundProcess spawns > a new Thread (see constructor), no thread pooling is used. > Besides problems in environments where some container might need to manage > the creation of threads, this issue also prevents certain > performance/efficiency optimizations via ThreadLocal from taking full effect. > E.g.: We use ThreadLocals for Random and SimpleDateFormat and those thread > local instances "are lost" when a new Thread is created. > Therefore BackgroundProcess should be given a new constructor that takes a > java.util.concurrent.Executor instance that is used to execute the Runnable. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Closed] (WW-1100) Adding autocomplete funcitonality to webwork
[ https://issues.apache.org/jira/browse/WW-1100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lukasz Lenart closed WW-1100. - Resolution: Not A Problem > Adding autocomplete funcitonality to webwork > > > Key: WW-1100 > URL: https://issues.apache.org/jira/browse/WW-1100 > Project: Struts 2 > Issue Type: Improvement > Components: Plugin - Tags >Affects Versions: WW 2.2.1 >Reporter: Jeff Cunningham >Assignee: Lukasz Lenart >Priority: Minor > > Hi...i have a basic autocomplete functionality working using the ww:component > tag, code i found from the dwr mailing list, and a style from > script.actulo.us. The code is based on dwr and script.aculo.us (not dojo) > To use it, you basically need to include the new autocomplete.js file (in > addition to the dwr and script.aculo.us and prototype includes) and include > the ww:component tag. thats it. (plus the style) > Below is the code for the autocomplete.js file: > my=function(){}; > my.Autocompleter = Class.create(); > Object.extend(Object.extend(my.Autocompleter.prototype, > Autocompleter.Base.prototype), { > initialize: function(element, update, DWRFunction, > onComplete, > options) { > this.baseInitialize(element, update, options); > this.DWRFunction = DWRFunction; > this.onComplete= onComplete; > this.options = options || {}; // > none yet > }, > getUpdatedChoices: function() { > > this.DWRFunction(this.element.value,this.onCompleteFunction()); > }, > onCompleteFunction: function() { > var t=this; > return function(data) { > // Do some DWR range selection. > // This will not work with tokenised > autocompletion, > // so is not really recommended. But I like > it > var start=t.element.value.length; > t.element.value=data[0]; > > DWRUtil.selectRange(t.element,start,t.element.value.length); > t.updateChoices(t.onComplete(data)); > } > } > }); > here is an example style: > div.autocomplete_class { > width: 350px; > background: #fff; > } > div.autocomplete_class ul { > border:1px solid #888; > margin:0; > padding:0; > width:100%; > list-style-type:none; > } > div.autocomplete_class ul li { > margin:0; > padding:3px; > } > div.autocomplete_class ul li.selected { > background-color: #ffb; > } > div.autocomplete_class ul strong.highlight { > color: #800; > margin:0; > padding:0; > } > here is how the component is called: >id="autocomplete" name="data" theme="css_xhtml" template="autocomplete"> >name="dwrMethod">FormHelper.getCities > 4 > > and below is the autocomplete.ftl from the css_xhtml directory: > <#include "/${parameters.templateDir}/css_xhtml/controlheader.ftl" /> > <#include "/${parameters.templateDir}/simple/text.ftl" /> >id="${parameters.id}_div"> > > var onComplete= function(data) { > // The onComplete function takes one argument, > which is the > // data returned by the DWR call. > // It must return a string, which should be the > // html definition of atag with
- tags for > each item. > var html="
"; > for (var i=0;i
"; > return html; > } > new > my.Autocompleter("${parameters.id}","${parameters.id}_div",${parameters.dwrMethod}, > onComplete,html+=" - "+data[i]+"
"; > } > html+="
[jira] [Closed] (WW-2308) javax.servlet.ServletException: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Short
[ https://issues.apache.org/jira/browse/WW-2308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lukasz Lenart closed WW-2308. - Resolution: Fixed Already implemented a new short range validator > javax.servlet.ServletException: java.lang.ClassCastException: > java.lang.Integer cannot be cast to java.lang.Short > - > > Key: WW-2308 > URL: https://issues.apache.org/jira/browse/WW-2308 > Project: Struts 2 > Issue Type: Bug > Components: Core Actions >Affects Versions: 2.0.11 > Environment: WindowsXP SP2, jboss 4.2.1 and jdk 1.6.0_03 >Reporter: Jason Douglas de Oliveira >Assignee: Lukasz Lenart >Priority: Critical > > JBossWeb/2.0.0.GA - Error report > HTTP Status 500 - noshade="noshade">type Exception reportmessage > description The server encountered an internal error > () that prevented it from fulfilling this request.exception > javax.servlet.ServletException: java.lang.ClassCastException: > java.lang.Integer cannot be cast to java.lang.Short > > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515) > > org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419) > > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) > root cause java.lang.ClassCastException: > java.lang.Integer cannot be cast to java.lang.Short > java.lang.Short.compareTo(Short.java:28) > > com.opensymphony.xwork2.validator.validators.AbstractRangeValidator.validate(AbstractRangeValidator.java:29) > > com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.validate(AnnotationActionValidatorManager.java:219) > > com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.validate(AnnotationActionValidatorManager.java:113) > > com.opensymphony.xwork2.validator.AnnotationActionValidatorManager.validate(AnnotationActionValidatorManager.java:100) > > com.opensymphony.xwork2.validator.ValidationInterceptor.doBeforeInvocation(ValidationInterceptor.java:142) > > com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:148) > > org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48) > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) > > com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) > > com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) > > com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) > > com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:123) > > com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) > > com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) > > com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) > > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:167) > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) > > com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) > > com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) > > com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) > > com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:105) >
[jira] [Closed] (WW-1404) Finish ActionContext
[ https://issues.apache.org/jira/browse/WW-1404?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lukasz Lenart closed WW-1404. - Resolution: Won't Fix > Finish ActionContext > > > Key: WW-1404 > URL: https://issues.apache.org/jira/browse/WW-1404 > Project: Struts 2 > Issue Type: Task > Components: New API >Affects Versions: 2.0.1 >Reporter: Bob Lee >Assignee: Lukasz Lenart >Priority: Major > > Implement getResult(), addResultInterceptor(), getNext() and getPrevious(). -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Closed] (WW-2556) Ajax validation does not work in portlets.
[ https://issues.apache.org/jira/browse/WW-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lukasz Lenart closed WW-2556. - Resolution: Won't Fix > Ajax validation does not work in portlets. > -- > > Key: WW-2556 > URL: https://issues.apache.org/jira/browse/WW-2556 > Project: Struts 2 > Issue Type: Bug > Components: Plugin - Portlet, XML Validators >Affects Versions: 2.1.0 > Environment: Struts 2.0.1 struts2-portlet-plugin > struts2-dojo-plugin-2.1.0 xwork-2.1.0 >Reporter: Vladimir Limansky >Assignee: Lukasz Lenart >Priority: Major > > Consider the following configuration. > 1. EditTest.jsp: > > > > > > > validate="true" > ajaxAfterValidation="true" > targets="response" > showLoadingText="false" > label="Submit it!" > formId="myFormId"/> > > > 2. TestAction.java > public class TestAction extends BaseActionSupport { > > private String testProperty = null; > > @Override > public String render() throws Exception { > return SUCCESS; > } > > @Transactional > public String save() { > return NONE; > } > public String getTestProperty() { > return testProperty; > } > public void setTestProperty(String testProperty) { > this.testProperty = testProperty; > } > > } > 3. TestAction-validation.xml > > > > > > > > 4. struts.xml > > > > > > > class="org.sibutu.module.calendar.action.TestAction"> > > /WEB-INF/jsp/Test.jsp > /WEB-INF/jsp/EditTest.jsp > /WEB-INF/jsp/Test.jsp > > > > > Currently I have the following behavior: > 1. The expected error message appears just emmidiately on the page startup, > NOT after submit button had been pushed. > 2. When submit button had been pressed error message disappears - even if we > assume that validation fails (the field was left blank with "requiredstring" > validator). > 3. http://struts.apache.org/2.x/docs/ajax-validation.html says the following: > "Remember to set struts.enableJSONValidation=true in the request to enable > AJAX validation" > But trying to debug JSONValidationInterceptor I noticed that > struts.enableJSONValidation parameter is null. Where this parameter should be > set? An attempt to put it to struts.properties gives nothing. But even when I > tried to set this parameter manually during debug session, it did not cause > the desired result. > In the struts2-showcase-2.1.0.war struts example validation works pretty fine. > Please let me know whether you need any additional info. > Please -- This message was sent by Atlassian Jira (v8.20.10#820010)