Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.3.3, 2.3.4
-
Struts 2.3.4, Portlet-Plugin 2.3.4, Portlet
-
Patch
Description
When using the URL tag and defining a value for the "action" attribute that is an expression using "%
{ ... }" notation, that expression does not get evaluated against the value stack when the applications is run as a portlet. However, when run as a standalone web application, that same expression is evaluated properly. For example:
<s:url action="%{actionState + formType}" var="displayURL">
where "actionState" & "formType" are variables on the value stack.
An example would be where actionState=create & formType=ChangeOfAddressForm, where my desired action would be createChangeOfAddressForm which is a valid action in the application. For the standalone web application this works properly, but when the application is run as a portlet, I get %{actionState + formType} as the action, which is not a valid action.