Sven Meier wrote
> problem is that TestPanel.onConfigure() is called during render phase 
> only, while in 7.4 it was (correctly) called in #beforeRender() (where 
> hierarchy changes are still allowed).

Hi Sven,
to be honest I didn't get it. Livecycle stages of a component are
"initializing", "rendering" and "removing", where hook methods involved are:

Initialization: /onInitialize/
Rendering (sorted by execution order): /onConfigure/, /onBeforeRender/,
/onRender/, /onComponentTag/, o/nComponentTagBody/, /onAfterRenderChildren/,
/onAfterRender/
Removing: /onRemove/

The /onConfigure/ method is a good point to manage the component states such
as its visibility. This method is called before the render phase starts. I
assume, changing children hierarchy is still allowed. But we're trying to
change the model object of a component, which, in my point of view, is
completely different from changing the children hierarchy
(/isVisibilityAllowed/ or /isEnabledAllowed/ is not called).

The /onBeforeRender/ method is called after the /onConfigure/ method. This
method is called before a component starts its rendering phase and would be
the last chance to change its children hierarchy. But we don't do so.

So why it is not allowed to change the model object of a panel which is a
child of a border component? 
We're doing this in our application at least since Wicket 1.5.


--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Cannot-modify-component-hierarchy-after-render-phase-has-started-tp4676711p4676760.html
Sent from the Users forum mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to