I'm developing a Seaside Application and I suspect I've reached a point in which I can no longer #call:
another component.
It's not an issue of my WAComponents, since I tried other messages that end up in #call:
, like #confirm:
.
I have 4 nested #call:
's in my app (I know, I know... but I'm not looking for design advice, just an answer on this :) ). The 5th just reloads the page, and the called component never appears.
I searched the docs but there's nothing about this, and debugging is really difficult to me, since I'm not familiar with Seaside's inner code.
This is Seaside 3.2 under Pharo 6.1.
Thanks!
There is no limit to the nested #call:
s, as correctly indicated in Johan's comment.
In this particular case, the "null" behavior of #call:
(i.e., just reloading the page), was due to an error in the #children
method of the parent WAComponent
. What was happening here was:
#render:
'ed component B, but component A's #children:
was buggy#call:
component C#call:
didn't work, it just reloaded the pageAs the Seaside documentation states, every WAComponent
that renders another WAComponent
must redefine #children
with a collection of all subcomponents. It's easy to forget to implement to do this, since most of the times it's not a show-stopper. Until you find yourself into this kind of scenario.