[ https://issues.apache.org/jira/browse/WW-5241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Burton Rhodes updated WW-5241: ------------------------------ Description: After upgrading to v6.0.3 (from v6.0.0), the ExecuteAndWait implementation using this [method|[https://struts.apache.org/core-developers/execute-and-wait-interceptor]] inserts "!methodName" into the to the refresh url. This results in a url that doesn't match a struts action - resulting in a 404 error. A real world example is below: Action Definition {code:java} <action name="LetterMergeBulk_contactList" class="com.afs.web.struts.action.letters.LetterMergeBulkAction" method="contactList"> <interceptor-ref name="ExecuteAndWaitInterceptor" /> <result name="wait">/struts/letters/letterMergeBulkWait_popup.jsp</result> <result>/struts/letters/letterMerge_popup.jsp</result> </action>{code} ExecuteAndWait (letterMergeBulkWait_popup.jsp) JSP Snippet {code:java} <head> <title>Please wait</title> <meta http-equiv="refresh" content="5;url=<s:url includeParams="all" />"/> </head>{code} <s:url> result in v6.0.3 - notice the inserted "!contactList" in the url {code:java} /afs/app/LetterMergeBulk_contactList!contactList.action?struts.token.name=token&token=A9SIKBABK17IZFM6AHSP0QSFIJHLZKJB&letterTemplateId=14773{code} <s:url> result in v6.0.0 {code:java} /afs/app/LetterMergeBulk_contactList.action?struts.token.name=token&token=A9SIKBABK17IZFM6AHSP0QSFIJHLZKJB&letterTemplateId=14773{code} This issue was introduced in WW-5190 was: After upgrading to v6.0.3 (from v6.0.0), the ExecuteAndWait implementation using [this method|[https://struts.apache.org/core-developers/execute-and-wait-interceptor]] inserts "!methodName" into the to the refresh url. This results in a url that doesn't match a struts action - resulting in a 404 error. A real world example is below: Action Definition {code:java} <action name="LetterMergeBulk_contactList" class="com.afs.web.struts.action.letters.LetterMergeBulkAction" method="contactList"> <interceptor-ref name="ExecuteAndWaitInterceptor" /> <result name="wait">/struts/letters/letterMergeBulkWait_popup.jsp</result> <result>/struts/letters/letterMerge_popup.jsp</result> </action>{code} ExecuteAndWait (letterMergeBulkWait_popup.jsp) JSP Snippet {code:java} <head> <title>Please wait</title> <meta http-equiv="refresh" content="5;url=<s:url includeParams="all" />"/> </head>{code} <s:url> result in v6.0.3 - notice the inserted "!contactList" in the url {code:java} /afs/app/LetterMergeBulk_contactList!contactList.action?struts.token.name=token&token=A9SIKBABK17IZFM6AHSP0QSFIJHLZKJB&letterTemplateId=14773{code} <s:url> result in v6.0.0 {code:java} /afs/app/LetterMergeBulk_contactList.action?struts.token.name=token&token=A9SIKBABK17IZFM6AHSP0QSFIJHLZKJB&letterTemplateId=14773{code} This issue was introduced in [WW-5190|https://issues.apache.org/jira/browse/WW-5190] > <s:url includeParams="all"> is generating an invalid url when used in > conjunction with ExecuteAndWait interceptor > ----------------------------------------------------------------------------------------------------------------- > > Key: WW-5241 > URL: https://issues.apache.org/jira/browse/WW-5241 > Project: Struts 2 > Issue Type: Bug > Components: Core Tags > Affects Versions: 6.0.3 > Reporter: Burton Rhodes > Priority: Major > Fix For: 6.1.0 > > > > After upgrading to v6.0.3 (from v6.0.0), the ExecuteAndWait implementation > using this > [method|[https://struts.apache.org/core-developers/execute-and-wait-interceptor]] > inserts "!methodName" into the to the refresh url. This results in a url > that doesn't match a struts action - resulting in a 404 error. > > A real world example is below: > Action Definition > {code:java} > <action name="LetterMergeBulk_contactList" > class="com.afs.web.struts.action.letters.LetterMergeBulkAction" > method="contactList"> > <interceptor-ref name="ExecuteAndWaitInterceptor" /> > <result > name="wait">/struts/letters/letterMergeBulkWait_popup.jsp</result> > <result>/struts/letters/letterMerge_popup.jsp</result> > </action>{code} > > > ExecuteAndWait (letterMergeBulkWait_popup.jsp) JSP Snippet > > {code:java} > <head> > <title>Please wait</title> > <meta http-equiv="refresh" content="5;url=<s:url includeParams="all" />"/> > </head>{code} > > > <s:url> result in v6.0.3 - notice the inserted "!contactList" in the url > {code:java} > /afs/app/LetterMergeBulk_contactList!contactList.action?struts.token.name=token&token=A9SIKBABK17IZFM6AHSP0QSFIJHLZKJB&letterTemplateId=14773{code} > > <s:url> result in v6.0.0 > {code:java} > /afs/app/LetterMergeBulk_contactList.action?struts.token.name=token&token=A9SIKBABK17IZFM6AHSP0QSFIJHLZKJB&letterTemplateId=14773{code} > > > This issue was introduced in WW-5190 -- This message was sent by Atlassian Jira (v8.20.10#820010)