You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Lukasz Lenart (JIRA)" <ji...@apache.org> on 2015/10/20 08:17:27 UTC

[jira] [Updated] (WW-4526) Invalid action generated by the form tag

     [ https://issues.apache.org/jira/browse/WW-4526?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lukasz Lenart updated WW-4526:
------------------------------
    Fix Version/s:     (was: 2.3.x)
                   2.3.25

> Invalid action generated by the form tag
> ----------------------------------------
>
>                 Key: WW-4526
>                 URL: https://issues.apache.org/jira/browse/WW-4526
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Actions, Value Stack
>    Affects Versions: 2.3.24
>            Reporter: David Vanacker
>            Priority: Critical
>             Fix For: 2.3.25
>
>         Attachments: struts2-form-url.zip
>
>
> Following the migration of Struts framework from 2.3.16.3 to 2.3.24, we detected that the action attribute of HTML tag Form generated with the Struts Form Tag contains an invalid scheme when the associated action class contains an accessor named getScheme(). 
> The value of this accessor is retrieved in org.apache.struts2.components.ServletUrlRender#renderFormUrl() from the ValueStack.         
> ValueStack vs = ActionContext.getContext().getValueStack();
> String scheme = vs.findString("scheme");
> The attachement contains a sample that illustrate the issue. 
> Run simply the command mvn tomcat:run to execute it . 
> It contains also a "patch" that overrides de DefaultUrlHelper . It checks if the scheme is equals to a valid scheme (http/https) and calls the default implementation. In case of the scheme is not valid, it calls the default implementation with null argument for the scheme ( replaced by the HttpServletRequest#getScheme() in the default implementation).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)