[Seaside] Question about #call:, continuations and responses

Karsten karsten at heeg.de
Thu Sep 18 21:25:54 UTC 2008

Hi Julian,
> No. A new process is forked in the session and the stack is thus only
> restored back as far as that point. The response is always for the
> current request.
thx, i'll have a closer look at this!
> Well, you can't call #call: or #answer: in the rendering phase, and
> you can't render in the action phase. If you're trying to #call: and
> then render in the same method (after the #call: returns) something is
> wrong.

right. However, in seaBreeze you don't have a rendering phase and still 
the developer has code executed in an ajax-callback. I don't really see 
why he should care if this code is executed via ajax or via a standard 
callback, that's why i try to fix this problem.

The "only" thing that doesn't work here is the continuation thing. 
Without continuation the new component is show and on answer the old 
component is back in place. But with the continuation in place, so that 
the #call: can return a value from the called component, there's no way 
to write back to the server....
> I think the problem is that the AJAX callbacks don't do the normal
> 2-phase action/render sequence - you just receive a request and return
> a response (it's more of an event-processing mechanism from the
> server's point of view). I'm not sure that calling from an AJAX
> callback makes sense.
Imagine some sort of form that only updates its error area and once all 
inputs are correct, the callback doesn't update the errors anymore but 
instead calls the next component or simply answers back to the previous 

Kind Regards

Karsten Kusche - Dipl.Inf. - karsten at heeg.de
Tel: +49 3496 21 43 29
Georg Heeg eK - Köthen
Handelsregister: Amtsgericht Dortmund A 12812

More information about the seaside mailing list