[
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
> <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)