Thanks a lot Harald,
I'll try it out and let you know how it went..
Regards,
Samba
On Wed, Jul 22, 2009 at 8:05 PM, Kuhn, Harald <[email protected]> wrote:
> Hi Samba,
>
>
>
> Trinidads built-in ppr-Framework has the ability to send redirects
> initiated by the server.
>
> The only steps you have to do are:
>
> · check if it is a ppr-request
>
> o on “normal” requests use response.sendRedirect
>
> o on ppr-requests send ppr-Message containing <redirect>
>
>
>
> Following code examples works on our site
>
>
>
> final boolean isPartialRequest =
> "true".equals(req.getHeader("Tr-XHR-Message"));
>
> if (isPartialRequest) {
>
> final PrintWriter writer = resp.getWriter();
>
> final XmlResponseWriter rw = new XmlResponseWriter(writer, "UTF-8");
>
> rw.startDocument();
>
> rw.write("<?Tr-XHR-Response-Type ?>\n");
>
> rw.startElement("redirect", null);
>
> rw.writeText(pageURL, null);
>
> rw.endElement("redirect");
>
> rw.endDocument();
>
> rw.close();
>
> }
>
> else {
>
> resp.sendRedirect(pageURL);
>
> }
>
>
>
> Kind regards
>
>
>
> Harald
>
>
>
>
>
> Lufthansa AirPlus Servicekarten GmbH · Hans-Böckler-Straße 7 · 63263
> Neu-Isenburg · Germany · Geschäftsführer: Patrick W. Diemer (Vorsitz), Klaus
> Busch · Vorsitzender des Aufsichtsrates: Stephan Gemkow · Handelsregister:
> Amtsgericht Offenbach/Main, HRB 8119
>
>
>
>
>
> *From:* Samba [mailto:[email protected]]
> *Sent:* Wednesday, July 22, 2009 11:59 AM
> *To:* MyFaces Trinidad Discussion
> *Subject:* how to handle redirets for PPR requests on session time out
>
>
>
> Hi,
>
> We are facing trouble in redirecting the users to login page for PPR
> requests after session time out.
> We are having a filter that redirects the users login ( jsp ) page if
> the user is not autheticated or the authentication timed out. But after
> redirecting,
> I'm seeing the following error in firebug console:
>
> *[**"Invalid PPR response. The response-headers were:\nDate: Wed, 22 Jul
> 2009 09:52:49 GMT\nServer: Apache\n..."**]**Common1_2_7.js (line 10649)*
>
> *[**"Error "**, **TypeError: a5 has no properties** message=**a5 has no
> properties**, **" delivering XML request status changed to "**, **
> function()**]*
>
>
>
> 1. I read on the internet that redirects on AJAX requests cannot be
> made server side and can only be made via javascript, is that true?
> 2. I tried adding a PPR hook to identify if the response is
> regarding related to session timeout and if yes, then would change the
> document location to login page
> however, this is not working as expected; perhaps I'm doing
> something wrong.
>
> Here is what I'm doing:
>
>
> function register(){
>
> TrPage.getInstance().getRequestQueue().addStateChangeListener(callbackMethod);
> }
>
>
>
>
> function callbackMethod(requestEvent)
> {
>
>
> if(requestEvent.getStatus()=TrXMLRequestEvent.STATUS_COMPLETE)
> {
>
> var
> response=+requestEvent.getResponseXML());
> if(has info about session timeout)
>
> documnet.location="/login.jsp";
> }
> }
>
>
> register();
>
> But I'm getting error saying requestEvent.getStatus() is
> not defined.
>
>
>
>
>
> Can some one help me how to redirect users to login page on
> PPR requestts?
>
> Thanks and Regards,
> Samba
>