You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Jesse Kuhnert (JIRA)" <de...@tapestry.apache.org> on 2007/09/14 03:09:32 UTC

[jira] Resolved: (TAPESTRY-975) Overriding ValidationDelegate and adding a "class" attribute results in duplicate attributes

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

Jesse Kuhnert resolved TAPESTRY-975.
------------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 4.1.1)
                   4.1.4

FieldLabel was calling renderInformalParameters ~after~ letting the validation delegate run.  By default AbstractComponent calls IMarkupWriter.attribute(name, value) when writing informal parameters - thus blowing away any conflicting attributes written by IValidationDelegate.   Moved the call to happen before IValidationDelegate runs. 

> Overriding ValidationDelegate and adding a "class" attribute results in duplicate attributes
> --------------------------------------------------------------------------------------------
>
>                 Key: TAPESTRY-975
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-975
>             Project: Tapestry
>          Issue Type: New Feature
>          Components: Framework
>    Affects Versions: 4.0.2
>            Reporter: Matt Raible
>            Assignee: Jesse Kuhnert
>             Fix For: 4.1.4
>
>         Attachments: ValidationDelegate.java
>
>
> I have the following in my custom ValidationDelegate:
>     public void writeAttributes(IMarkupWriter writer, IRequestCycle cycle,
>                                 IFormComponent component, IValidator validator) {
>         if (isInError()) {
>             String cssClass = ((component.getBinding("class") != null) ?
>                                 component.getBinding("class").getObject().toString() : "");
>             writer.attribute("class", cssClass + " error");
>         }
>     }
> However, rather than just writing a single "class" attribute, it writes two:
> class="text large error" class="text large" 
> Ideally, only one "class" attribute gets written.  Maybe IMarkupWriter nees an appendAttribute() method, or it just needs to be smart enough to detect duplicates?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org