You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2011/01/27 18:20:44 UTC

[jira] Commented: (WICKET-3398) EnclosureContainer: configure() should be called on the child component before calling isVisible on it

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

Hudson commented on WICKET-3398:
--------------------------------

Integrated in Apache Wicket 1.4.x #406 (See [https://hudson.apache.org/hudson/job/Apache%20Wicket%201.4.x/406/])
    Issue: WICKET-3398


> EnclosureContainer: configure() should be called on the child component before calling isVisible on it
> ------------------------------------------------------------------------------------------------------
>
>                 Key: WICKET-3398
>                 URL: https://issues.apache.org/jira/browse/WICKET-3398
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.4.15, 1.5-RC1
>            Reporter: Ulrike M
>            Assignee: Igor Vaynberg
>            Priority: Minor
>             Fix For: 1.4.16, 1.5-RC2
>
>
> As advised by the javadoc for Component#onConfigure, we switched to this mechanism instead of overriding isVisible/isEnabled when they contain extensive logic.
> Now if we do that for a child component that will control the visibility of the EnclosureContainer, EnclosureContainer#isVisible directly calls through to #isVisible on the child component, and this may happen before #onConfigure on the child ever gets called. In our situation where we set the visibility in #onConfigure, the result of #isVisible may change during the request cycle, which may lead to undesirable and confusing results.
> The javadoc for Component#configure states that for linked components, #configure should be called on the 'other' component. Applied to EnclosureContainer, I think the correct way to handle this is that EnclosureContainer#onConfigure must be overridden in order to call child.configure(). This way, any call to #isVisible will only occur after #onConfigure has been called, the sequence is correct again.

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