Yes, please.

On Wed, Dec 19, 2012 at 2:16 PM, Thijs <vonk.th...@gmail.com> wrote:

> Hi,
>
> I'm still battling this issue. I have a working quickstart that
> demonstrates the issue we have.
> Should I open a ticket?
>
> Kind regards
> Thijs
>
>
> On 12-12-2012 15:07, Thijs wrote:
>
>> No it doesn't hit the browser cache.
>> It's actually recreating a new Page. We've put breakpoints in Wicket to
>> establish that.
>> In PageProvider is trying to create a new Instance see the stacktrace.
>>
>> The following stacktrace is taken when we use the 'backspace' or 'back
>> button' in the browser after a session has expired.
>>
>> [2012-12-12 14:42:11,535 TP-Processor11 ERROR 
>> org.apache.wicket.**DefaultExceptionMapper:$L]
>> Unexpected error occurred
>>
>> org.apache.wicket.**WicketRuntimeException: Unable to create page from
>> class org.bar.bla.FooPage. Class does not have a visible default contructor.
>>
>> at org.apache.wicket.session.**DefaultPageFactory.newPage(**
>> DefaultPageFactory.java:79)
>>
>> at org.apache.wicket.**DefaultMapperContext.**newPageInstance(**
>> DefaultMapperContext.java:133)
>>
>> at org.apache.wicket.core.**request.handler.PageProvider.**
>> resolvePageInstance(**PageProvider.java:278)
>>
>> at org.apache.wicket.core.**request.handler.PageProvider.**
>> getPageInstance(PageProvider.**java:166)
>>
>> at org.apache.wicket.request.**handler.render.PageRenderer.**
>> getPage(PageRenderer.java:78)
>>
>> at org.apache.wicket.request.**handler.render.**
>> WebPageRenderer.renderPage(**WebPageRenderer.java:94)
>>
>> at org.apache.wicket.request.**handler.render.**WebPageRenderer.respond(*
>> *WebPageRenderer.java:244)
>>
>> at org.apache.wicket.core.**request.handler.**RenderPageRequestHandler.**
>> respond(**RenderPageRequestHandler.java:**165)
>>
>> at org.apache.wicket.request.**cycle.RequestCycle$**
>> HandlerExecutor.respond(**RequestCycle.java:814)
>>
>> at org.apache.wicket.request.**RequestHandlerStack.execute(**
>> RequestHandlerStack.java:64)
>>
>> at org.apache.wicket.request.**cycle.RequestCycle.execute(**
>> RequestCycle.java:253)
>>
>> at org.apache.wicket.request.**cycle.RequestCycle.**
>> processRequest(RequestCycle.**java:210)
>>
>> at org.apache.wicket.request.**cycle.RequestCycle.**
>> processRequestAndDetach(**RequestCycle.java:281)
>>
>> at org.apache.wicket.protocol.**http.WicketFilter.**
>> processRequest(WicketFilter.**java:188)
>>
>> at org.apache.wicket.protocol.**http.WicketFilter.doFilter(**
>> WicketFilter.java:245)
>>
>> ....
>>
>> Not that in this case we have a page mounted with no Default Constructor
>> or Constructor with page parameters because we only want a 'nice' url for
>> this page.
>>
>> We also have situations where we have multiple entry points for a Web
>> application where one page can be reached with page parameters or through a
>> constructor taking an object. In both cases we don't want these pages to be
>> recreated when the session is expired.
>>
>> Thijs
>>
>> On 12-12-2012 9:40, Martin Grigorov wrote:
>>
>>> It seems that the browser tries to load the page from its cache.
>>> I think you need to set proper cache headers to always ask the server
>>> instead of using the local data.
>>>
>>>
>>> On Tue, Dec 11, 2012 at 6:59 PM, Rob Sonke<r...@tigrou.nl>  wrote:
>>>
>>>  Yes I know but by using the back button it seems to be ignored. Like it
>>>> tries to serve the same page no matter we have a session or not.
>>>>
>>>>
>>>> On Tue, Dec 11, 2012 at 9:59 AM, Martin Grigorov <mgrigo...@apache.org
>>>>
>>>>> wrote:
>>>>> On Mon, Dec 10, 2012 at 9:04 AM, Rob Sonke<r...@tigrou.nl>  wrote:
>>>>>
>>>>>  Last week we fixed an issue with Wicket 6 where mounted pages were
>>>>>>
>>>>> being
>>>>
>>>>> reconstructed after the session expired. That was due to this (new)
>>>>>>
>>>>> setting
>>>>>
>>>>>> which we set to false now:
>>>>>>
>>>>>> getPageSettings().**setRecreateMountedPagesAfterEx**piry(false);
>>>>>>
>>>>>> This worked perfectly for clicking on (ajax) links but, this doesn't
>>>>>>
>>>>> seem
>>>>
>>>>> to work when I use the back button of the browser after the session
>>>>>> expired. What happens is that Wicket tries to reconstruct the previous
>>>>>> (mounted bookmarkable) page. But that's failing in our case because we
>>>>>>
>>>>> dont
>>>>>
>>>>>> support that as every page needs session information.
>>>>>>
>>>>>> Am I doing something wrong? As I would expect a PageExpiredException
>>>>>> in
>>>>>> this case.
>>>>>>
>>>>>>  If you need PEE then this is the correct setting.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Martin Grigorov
>>>>> jWeekend
>>>>> Training, Consulting, Development
>>>>> http://jWeekend.com  <http://jweekend.com/>
>>>>>
>>>>>
>>>
>>
>


-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com <http://jweekend.com/>

Reply via email to