Thus the +0, not -1. Duh, sorry...
On Fri, Mar 18, 2011 at 3:01 PM, James Carman <[email protected]> wrote: > I don't think he was saying it was incorrect. He was saying that he's > okay with the added inconvenience if it makes everything work > correctly. > > On Fri, Mar 18, 2011 at 1:51 PM, tetsuo <[email protected]> wrote: >> Why would it (Igor's proposal) be not correct? >> >> >> On Fri, Mar 18, 2011 at 2:28 PM, Peter Ertl <[email protected]> wrote: >>> in general I prefer correctness over convenience ... so if we need a >>> context listener to do everything right so should it be (remember having >>> the same kind of trouble with jetty) >>> >>> +0 >>> >>> Am 18.03.2011 um 17:50 schrieb Igor Vaynberg: >>> >>>> another possible solution is to serialize the page into SerializedPage >>>> before sticking it into session...this may introduce some overhead, >>>> especially for non-clustered apps. however, we can have a special >>>> pagemanager for non-clustered apps that does not change page instances >>>> into SerializedPage...kind of like HttpSessionStore works in 1.4 >>>> compared to a store that uses DiskPageStore. >>>> >>>> -igor >>>> >>>> >>>> On Fri, Mar 18, 2011 at 9:35 AM, Martin Grigorov <[email protected]> >>>> wrote: >>>>> On Fri, Mar 18, 2011 at 5:04 PM, tetsuo <[email protected]> wrote: >>>>> >>>>>> Well, I was trying to understand the problem before posting random >>>>>> thoghts >>>>>> :) >>>>>> >>>>>> SegFault commented the issue with this question: >>>>>> >>>>>>> " the only problem I see is that there is no one to clean the static >>>>>>> org.apache.wicket.page.PersistentPageManager.managers" <= maybe a stupid >>>>>> question, >>>>>>> but how does this behave in case of many context reloading (for example >>>>>> in developpement >>>>>>> mode), is this cleaned up by container ? or this will end up with a >>>>>> PermGen space error ? >>>>>> >>>>>> I think that, unless you hold references to webapp-specific classes in >>>>>> server-loaded classes' static fields, or leave zombie threads, PermGen >>>>>> shouldn't occur, and all classes should be gc'ed. Does the page >>>>>> manager do anything that prevents it to be gc'ed? Does it need any >>>>>> extra clean-up, besides being unloaded with the webapp classloader? >>>>>> >>>>>> The problem is that the web container first destroys WicketFilter and >>>>>> then >>>>> goes to serialize/persist the session. >>>>> Wicket puts Page instances in the session, but before serialization these >>>>> Page instances are transformed to SerializedPage which is a struct of >>>>> int pageId; >>>>> String sessionId; >>>>> byte[] data; // the page itself >>>>> >>>>> and to be able to transform them Wicket needs the configured IPageManager. >>>>> With the destroy of WicketFilter all information is removed (null-ified) >>>>> including the PageManager and thus the serialization fails. >>>>> >>>>> With the new ServletContextListener (SCL) we will move the application >>>>> start >>>>> and stop from the Filter to SCL and solve this problem. >>>>> >>>>> Additionally by Servlet specification the container may restart >>>>> servlets/filters at any time without completely stopping the application, >>>>> i.e. w/o >>>>> calling >>>>> javax.servlet.ServletContextListener.contextDestroyed(ServletContextEvent). >>>>> So the new way will improve the current behavior. >>>>> >>>>>> >>>>>> >>>>>> On Fri, Mar 18, 2011 at 12:42 PM, Igor Vaynberg <[email protected]> >>>>>> wrote: >>>>>>> i would say that the lack of response shows that people dont care >>>>>>> about a couple more xml lines they have to add to web.xml once and >>>>>>> forget about. >>>>>>> >>>>>>> -igor >>>>>>> >>>>>>> On Fri, Mar 18, 2011 at 7:47 AM, Martin Grigorov <[email protected]> >>>>>> wrote: >>>>>>>> On Thu, Mar 17, 2011 at 10:54 PM, Martin Grigorov <[email protected] >>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> To solve https://issues.apache.org/jira/browse/WICKET-3470 we need to >>>>>>>>> introduce ServletContextListener in Wicket. >>>>>>>>> In comment >>>>>>>>> >>>>>> https://issues.apache.org/jira/browse/WICKET-3470?focusedCommentId=13008166&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13008166Idescribed >>>>>> a proposal how we can change web.xml configuration to make it >>>>>>>>> working. The proposal is based on a discussion between me and Igor in >>>>>> IRC. >>>>>>>>> >>>>>>>>> This is a rather big change and we need more opinions, so please share >>>>>> if >>>>>>>>> you have ideas. >>>>>>>>> >>>>>>>> >>>>>>>> By "big" here I mean conceptually, not code wise. Technically it >>>>>>>> doesn't >>>>>>>> seem to be big or complex. >>>>>>>> >>>>>>>>> >>>>>>>>> --martin-g >>>>>>>>> >>>>>>>>> P.S. I'm interested to understand why there is no such problem with >>>>>> Wicket >>>>>>>>> 1.4? >>>>>>>>> I guess sessions in 1.4 are cleared earlier and never persisted >>>>>>>>> between >>>>>> web >>>>>>>>> container restarts. >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Martin Grigorov >>>>>>>>> jWeekend >>>>>>>>> Training, Consulting, Development >>>>>>>>> http://jWeekend.com <http://jweekend.com/> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Martin Grigorov >>>>>>>> jWeekend >>>>>>>> Training, Consulting, Development >>>>>>>> http://jWeekend.com <http://jweekend.com/> >>>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Martin Grigorov >>>>> jWeekend >>>>> Training, Consulting, Development >>>>> http://jWeekend.com <http://jweekend.com/> >>>>> >>> >>> >> >
