You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Sven Meier (Commented) (JIRA)" <ji...@apache.org> on 2012/02/14 09:19:59 UTC

[jira] [Commented] (WICKET-4408) Components resolved by an IComponentResolver fail to contribute to header via renderHead

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

Sven Meier commented on WICKET-4408:
------------------------------------

auto-components are added to the component tree not until rendering of markup, this is too late for header contributions.
                
> Components resolved by an IComponentResolver fail to contribute to header via renderHead
> ----------------------------------------------------------------------------------------
>
>                 Key: WICKET-4408
>                 URL: https://issues.apache.org/jira/browse/WICKET-4408
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.5.4
>         Environment: Happens on all FireFox  Chrome, IE
> Windows XP
>            Reporter: Chris Colman
>              Labels: wicket
>
> If a component is resolved via an IComponentResolver implementation then its overridden renderHead method never gets called.
> If the same component is added explicitly to its parent then its renderHead method is called.
> This is critical for us because we have markup variations that may or may not include certain panels. We thus leave the construction/adding of these panels to our IComponentResolver implementation because we can't explicitly add them because not all markup will require all panels.
> Class MyPanel extends Panel
> {
> /**
>  * Write out necessary header markup.
>  */
> @Override
> public void renderHead(IHeaderResponse response)
> {
>     StringBuffer sb = new StringBuffer();
>     
>     sb.append("<script src=\"/jquery.easing.1.3.min.js\"></script>");
>     sb.append("<script src=\"/trans-banner.min.js\"></script>");
>  
>     response.renderString(sb.toString());
> } 
> }
> We aren't using any markup inheritance at the panel level.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira