have you tried

class myrequestcycle extends webrequestcycle {
  onruntimeexception(e) {
     if (e instanceof pageexpiredexeption) {
          if (getrequst().isajax()) {
                  // this is an ajax request that caused pep exception
                  throw new abortwithhttpstatusexception(400);
            }}}}

-igor

On Tue, Jun 23, 2009 at 6:13 PM, Ryan McKinley<[email protected]> wrote:
> Is there anyway for an ajax call to catch the PageExpiredException?
>
> I am using the jquery history plugin to load pages in wicket
> (http://www.mikage.to/jquery/jquery_history.html) -- this lets me do
> ajax updates with bookmarkable urls.  The one issue I am having is
> that if the session has expired it gives a big error when I could
> easily recover by simply refreshing the whole page.
>
> I figured the failure callback on wicketAjaxGet would let me do this.
> I have tried:
>
> function pageload(hash) {
>  var cburl = 
> "../?wicket:interface=:0::IActivePageBehaviorListener:1:1&wicket:ignoreIfNotActive=true"
> + "&hash="+hash;
>  wicketAjaxGet( cburl, function(){}, function(){
>    // on failure... reload the whole page...
>    alert( "Dooh " + document.location  );
>    window.location.reload();
>  } );
> }
>
> This works fine if the server is turned off, but for the
> PageExpiredException - it redirects to:
> http://localhost:8080/?wicket:bookmarkablePage=:org.apache.wicket.markup.html.pages.InternalErrorPage
>
> anyway to avoid that?
>
> Perhaps override WebApplication:
>  protected Page onDeploymentRuntimeException(Page cause, RuntimeException ex) 
> {
>     // ????
>  }
>
> but not sure what is the wicket way...
>
> thanks for any pointers!
>
> ryan
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to