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

Lukasz Lenart updated WW-5824:
------------------------------
    Fix Version/s: 6.13.0

> Radio tag renders its name attribute without HTML escaping, unlike every 
> other form tag
> ---------------------------------------------------------------------------------------
>
>                 Key: WW-5824
>                 URL: https://issues.apache.org/jira/browse/WW-5824
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Tags
>            Reporter: Lukasz Lenart
>            Assignee: Lukasz Lenart
>            Priority: Minor
>             Fix For: 6.13.0, 7.5.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> The radio template is the only bundled form template that writes the {{name}} 
> attribute with {{?no_esc}}. Every sibling template (checkbox, checkboxlist, 
> text, select, file, hidden, password, textarea, submit, reset, form) writes 
> it under the FreeMarker auto-escaping configured for the UI templates, and 
> the javatemplates plugin escapes it as well.
> The exception dates from the original template, which never carried the 
> per-parameter {{?html}} the checkbox template had. When the templates moved 
> to built-in auto-escaping in WW-4972, the radio template kept its previous 
> output by adding {{?no_esc}} to that one attribute.
> h2. Current behaviour
> A radio with a name containing a double quote, rendered under the {{simple}}, 
> {{xhtml}} or {{html5}} theme, closes the attribute early:
> {code}<input type="radio" name="x" onfocus="alert(1)" 
> id="x__onfocus__alert_1_a" value="a"/>
> {code}
> A checkboxlist with the same name renders the quote as {{&quot;}}.
> h2. Expected behaviour
> The radio name is written the same way as on every other tag, HTML-escaped.
> h2. Change
> Remove {{?no_esc}} from the {{name}} attribute in the {{simple}} and 
> {{html5}} radio templates and pin the escaped output with a test. One 
> existing fixture, Radio-6.txt, pins a name containing apostrophes; 
> auto-escaping renders those as {{&#39;}}, as the combobox fixtures already 
> show.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to