we already do that But the SecondLevelCache also calles detach! It has to do that.. Or we have to change that that the touch of the page (that pushes the page into the session) doesn't happen before the detach of the RequestCycle. But that is ugly
Thats why we get double detach calls in normal page requests And then we still have ajax i guess where also loads of detach problems where happening i believe? I don't mind double detach calls. we also can say that can happen. Then we don't need the is attached flag But there was a bug report for that... johan On 1/5/07, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
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 > >
