Burton Rhodes created WW-5241:
---------------------------------
Summary: <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
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|https://issues.apache.org/jira/browse/WW-5190]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)