[Seaside-dev] RE: [Seaside] hot to use response during action phase?

Sebastian Sastre ssastre at seaswork.com
Mon Mar 9 12:41:11 UTC 2009


Hi Julian, I'm sending you a demo with the problem
best,
sebastian 

> -----Mensaje original-----
> De: seaside-dev-bounces at lists.squeakfoundation.org 
> [mailto:seaside-dev-bounces at lists.squeakfoundation.org] En 
> nombre de Julian Fitzell
> Enviado el: Sunday, March 08, 2009 06:23
> Para: Seaside - developer list
> Asunto: Re: [Seaside-dev] RE: [Seaside] hot to use response 
> during action phase?
> 
> Can you show the code that is calling this method?
> 
> On Sat, Mar 7, 2009 at 5:18 PM, Sebastian Sastre 
> <ssastre at seaswork.com> wrote:
> > hi Julian,
> > you're right, dev is better for this.
> > Look, in a WASession subclass I have this piece of code:
> >
> >  self requestContext response
> >                        addCookie: (WACookie new
> >                                                key: self 
> loginRememberKey;
> >                                                value: 
> loginCookieValue;
> >                                                yourself)
> >
> > and I can see the request context is called from the 
> process variable and it is
> > not nil but its response instVar is nil and I found that's 
> inconvenient
> > cheers,
> > seaside
> >
> >
> >> -----Mensaje original-----
> >> De: seaside-bounces at lists.squeakfoundation.org
> >> [mailto:seaside-bounces at lists.squeakfoundation.org] En nombre
> >> de Julian Fitzell
> >> Enviado el: Saturday, March 07, 2009 12:51
> >> Para: Seaside - general discussion
> >> Asunto: Re: [Seaside] hot to use response during action phase?
> >>
> >> How are you calling #response on WASession? it should be self
> >> requestContext response addCookie:
> >>
> >> Are you storing the request context somewhere? That would 
> be the most
> >> likely cause of the response being nil. You need to make 
> sure to call
> >> "self requestContext" at the point that you want to use to 
> make sure
> >> you are using the correct current context...
> >>
> >> Julian
> >>
> >> On Sat, Mar 7, 2009 at 4:33 PM, Sebastian Sastre
> >> <ssastre at seaswork.com> wrote:
> >> > Hi Lukas, yes I've read that in the seaside site and code
> >> so I was counting with
> >> > that and I find it cool. So I made my code to be using it
> >> like that. The problem
> >> > comes because the request context returns nil when
> >> #response is sent at that
> >> > point.
> >> > In the walkback I can see this is happening during the
> >> action phase continuation
> >> > evaluation, then reach my component, it announces something
> >> other reacts and
> >> > asks:
> >> > self session response addCookie: self newLoginCookie
> >> > and then I have a nil DNU #addCookie:
> >> > there could be a problem on *when* the response inst var is
> >> initialized in the
> >> > request context? why the response is not initialized right
> >> from the begining
> >> > (request context fabrication)?
> >> > thanks
> >> > sebastian
> >> >
> >> >> -----Mensaje original-----
> >> >> De: seaside-bounces at lists.squeakfoundation.org
> >> >> [mailto:seaside-bounces at lists.squeakfoundation.org] En nombre
> >> >> de Lukas Renggli
> >> >> Enviado el: Saturday, March 07, 2009 05:56
> >> >> Para: Seaside - general discussion
> >> >> Asunto: Re: [Seaside] hot to use response during action phase?
> >> >>
> >> >> > I need to manipulate a couple cookies from the app and when
> >> >> porting from 2.8 to
> >> >> > 2.9 I've noticed the action phase has not available the
> >> >> response in the request
> >> >> > context.
> >> >>
> >> >> In Seaside 2.9 every request is processed with a request context
> >> >> (instance of WARequestContext). The request context is
> >> instantiated by
> >> >> the sever adaptor and knows all the necessary things to 
> process a
> >> >> request. It holds the request (instance of WARequest) and
> >> the response
> >> >> (instance of WAResponse). Furthermore, it also knows the current
> >> >> application and session if available.
> >> >>
> >> >> So adding cookies is much easier in Seaside 2.9. There is
> >> no need to
> >> >> do a redirect anymore, because the response that is sent
> >> back to the
> >> >> browser is known upfront. Simply ask the request context for the
> >> >> current response and add your cookies in the callback or
> >> render phase:
> >> >>
> >> >>     self requestContext response addCookie: ...
> >> >>
> >> >> Cheers,
> >> >> Lukas
> >> >>
> >> >> --
> >> >> Lukas Renggli
> >> >> http://www.lukas-renggli.ch
> >> >> _______________________________________________
> >> >> seaside mailing list
> >> >> seaside at lists.squeakfoundation.org
> >> >> 
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> >> >
> >> > _______________________________________________
> >> > seaside mailing list
> >> > seaside at lists.squeakfoundation.org
> >> > 
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> >> >
> >> _______________________________________________
> >> seaside mailing list
> >> seaside at lists.squeakfoundation.org
> >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> >
> > _______________________________________________
> > seaside-dev mailing list
> > seaside-dev at lists.squeakfoundation.org
> > http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
> >
> _______________________________________________
> seaside-dev mailing list
> seaside-dev at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cantCookie-sebastian_sastre.1.mcz
Type: application/octet-stream
Size: 1481 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/seaside-dev/attachments/20090309/e65d6283/cantCookie-sebastian_sastre.1.obj


More information about the seaside-dev mailing list