On Mon, Aug 22, 2011 at 4:42 PM, Howard Lewis Ship <hls...@gmail.com> wrote:
> Actually, perhaps Tapestry's client-side support should, by default,
> handle 302 correctly.

Yes, perhaps so. But the correctness is "in the eye of the beholder".
It's clear that a 302 response to a non-ajax request always causes a
redirect, but not necessarily so for an ajax request. If the default
behavior was easily overridable then yes, why not. Perhaps I should
just bring tapestry-exceptionpage functionality to the core.

Kalle


> Currently, Tapestry's JSON response for partial page updates includes
> a special key for performing a redirect.
>
> On Mon, Aug 22, 2011 at 2:20 PM, Kalle Korhonen
> <kalle.o.korho...@gmail.com> wrote:
>> On Mon, Aug 22, 2011 at 1:27 PM, Gunnar Eketrapp
>> <gunnar.eketr...@gmail.com> wrote:
>>> I just rewrote my very old ProtectedPageGateKeeper that implemented
>>> Dispatcher with a new one
>>> inspired by Howard's blog
>>> http://tapestryjava.blogspot.com/search/label/security
>>> The new one implements ComponentRequestFilter and is better suited for
>>> protecting ajax enabled pages.
>>> So I thought ...
>>> Now to my problem:
>>> The redirect that takes place after an ajax call seems to disappear into
>>> thin air. I.e. the page displaying
>>> a rollling ajax loader is not redirected to my /noacess page. I have to hit
>>> a full page refresh for the redirect to work.
>>> Is there some trick needed in order to get the redirect to work for an ajax
>>> call.
>>> Sorry for asking stupid newbie questions ... of course I have missed
>>> something again!
>>
>> I don't think it's a stupid newbie question but obviously you cannot
>> just send 302 uri as a response to an ajax request. If you want a full
>> page refresh, you can handle it similarly how the tynamo-exceptionpage
>> module (http://tynamo.org/tapestry-exceptionpage+guide) handles
>> exceptions in ajax responses
>> (http://svn.codehaus.org/tynamo/trunk/tapestry-exceptionpage/src/main/java/org/tynamo/exceptionpage/services/ConfigurableRequestExceptionHandler.java).
>> Or, take a look at T5.3's new ajax error handler, rendering an iframe
>> on the fly in response to an ajax error.
>>
>> Kalle
>>
>>
>>> 2011-08-22 21:54:53.243 [btpool0-11] DEBUG u.s.UtskicketModule.RequestLogger
>>> - Request: /group/members.grid.pager/1/grid (Method=POST,
>>> browser=Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0,
>>> isXHR=true)
>>> 2011-08-22 21:54:53.243 [btpool0-11] DEBUG
>>> u.services.ProtectedPageGateKeeper2 - Page path:
>>> /group/members.grid.pager/1/grid
>>>
>>> 2011-08-22 22:01:06.500 [btpool0-10] DEBUG u.s.UtskicketModule.RequestLogger
>>> - Request: /group/members.grid.pager/7/grid (Method=POST,
>>> browser=Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0,
>>> isXHR=true)
>>> 2011-08-22 22:01:06.500 [btpool0-10] DEBUG
>>> u.services.ProtectedPageGateKeeper2 - Page path:
>>> /group/members.grid.pager/7/grid
>>> 2011-08-22 22:01:06.500 [btpool0-10] DEBUG u.s.UtskicketModule.RequestLogger
>>> - Request: /noaccess (Method=GET, browser=Mozilla/5.0 (Windows NT 6.1;
>>> rv:5.0) Gecko/20100101 Firefox/5.0, isXHR=false)
>>>
>>> Note: The return from the request above does not show up in the browser ...
>>>
>>> 2011-08-22 22:01:56.956 [btpool0-10] DEBUG u.s.UtskicketModule.RequestLogger
>>> - Request: /group/members/3 (Method=GET, browser=Mozilla/5.0 (Windows NT
>>> 6.1; rv:5.0) Gecko/20100101 Firefox/5.0, isXHR=false)
>>> 2011-08-22 22:01:56.960 [btpool0-10] DEBUG
>>> u.services.ProtectedPageGateKeeper2 - Page path: /group/members/3
>>> 2011-08-22 22:01:56.964 [btpool0-10] DEBUG u.s.UtskicketModule.RequestLogger
>>> - Request: /noaccess (Method=GET, browser=Mozilla/5.0 (Windows NT 6.1;
>>> rv:5.0) Gecko/20100101 Firefox/5.0, isXHR=false)
>>>
>>> Note: Now we get to the /noaccess page
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>
>>
>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to