i think its simpler then that. we keep a stack of request targets used, so at the end of the request cycle we just need to go through the stack and call detach on each request target.
-igor On 1/5/07, Johan Compagner <[EMAIL PROTECTED]> wrote:
> > this should be enough (IMHO): > > >> 1) resolve link component > >> 2) invoke onclick (internal methods of the component) > >> 3) invoke onbeforerender > >> 4) invoke render > >> 5) invoke onafterrender this doesn't work >> 1) resolve link component (page1) >> 2) invoke onclick (page1) (internal methods of the component) >setResponsePage(Page2) >> 3) invoke onbeforerender (Pag2) >> 4) invoke render (Page2) >> 5) invoke onafterrender (Page2) Aaarghh Page1 will still be in a attached state!!...... the complete picture can be this: > >> 1) resolve link component (page1) > >> 2) invoke onattach (Page1) > >> 3) invoke onclick (Page1) > >> 2) invoke onattach (Page2) > >> 4) invoke onbeforerender (Page2) > >> 5) invoke render (Page2) > >> 6) invoke onafterrender (Page2) > >> 7) invoke ondetach (Page2) > >> 7) invoke ondetach (Page1) thats the complete picture that has to be taken into account. But onAttach can be just an attach method that is public or maybe protected final And is only used to set the IS_ATTACHED_FLAG to true on the complete component hierarchy. johan
