You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2013/05/30 13:20:20 UTC

[jira] [Commented] (WW-3920) AnchorHandler does not render onclick() correctly

    [ https://issues.apache.org/jira/browse/WW-3920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13670249#comment-13670249 ] 

Hudson commented on WW-3920:
----------------------------

Integrated in Struts2-JDK6 #720 (See [https://builds.apache.org/job/Struts2-JDK6/720/])
    WW-4084 Restores appending <s:param>s to <s:a/> tag which was broken since WW-3920 (Revision 1487806)

     Result = SUCCESS
lukaszlenart : 
Files : 
* /struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/AnchorHandler.java
* /struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/SimpleTheme.java

                
> AnchorHandler does not render onclick() correctly
> -------------------------------------------------
>
>                 Key: WW-3920
>                 URL: https://issues.apache.org/jira/browse/WW-3920
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Java Templates
>    Affects Versions: 2.3.4.1
>            Reporter: Greg Huber
>            Assignee: Lukasz Lenart
>            Priority: Minor
>             Fix For: 2.3.12
>
>         Attachments: patch.txt
>
>
> The sripting methods are ignored on the <a/> tag.
> It never calls the start on ScriptingEventsHandler so does not add the attributes.  
> Have checked it with image href links, which is what I think  was the reason it was done this way.
> {code:java}
> public class AnchorHandler extends AbstractTagHandler implements TagGenerator {
>     public void generate() throws IOException {
>         //all rendering must happend at the end of the tag, so we can support nested params
> // Added start
>     	Map<String, Object> params = context.getParameters();
>         Attributes attrs = new Attributes();
>         attrs.addIfExists("name", params.get("name"))
>                 .addIfExists("id", params.get("id"))
>                 .addIfExists("class", params.get("cssClass"))
>                 .addIfExists("style", params.get("cssStyle"))
>                 .addIfExists("href", params.get("href"), false)
>                 .addIfExists("title", params.get("title"))
>                 .addIfExists("tabindex", params.get("tabindex"));
>         start("a", attrs);
> // added end
>     }
>     public static class CloseHandler extends AbstractTagHandler implements TagGenerator {
>         public void generate() throws IOException {
>             Map<String, Object> params = context.getParameters();
> // Removed
>             /*Attributes attrs = new Attributes();
>             attrs.addIfExists("name", params.get("name"))
>                     .addIfExists("id", params.get("id"))
>                     .addIfExists("class", params.get("cssClass"))
>                     .addIfExists("style", params.get("cssStyle"))
>                     .addIfExists("href", params.get("href"), false)
>                     .addIfExists("title", params.get("title"))
>                     .addIfExists("tabindex", params.get("tabindex"));
>             start("a", attrs);*/
> // removed
>             String body = (String) params.get("body");
>             if (StringUtils.isNotEmpty(body))
>                 characters(body, false);
>             end("a");
>         }
>     }
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira