Right, it&#39;s definitely possible to work around this problem using proxy children, but going forward I don&#39;t think that&#39;s how Twisted *should* behave.<br><br>(I actually tried this, and nope, it&#39;s not exactly pretty :-( )<br>

<br>The reason for that is that that would mean there&#39;s two ways to do things. Suppose a child is missing. In the case of a blocking/immediate lookup, you&#39;d return an error resource from getChild. In the case of an asynchronous lookup, you&#39;d return a resource immediately, regardless of whether the lookup fails or not (since you don&#39;t know yet) whose render method returns NOT_DONE_YET and eventually finishes a request.<br>

<br>If getChild supported deferreds, you&#39;d return an deferred error page from getChild in the asynchronous case, and you&#39;d return the error page as you always have in the synchronous case. <br><br>That makes a lot more sense to me. What I want is &quot;so, there&#39;s a value (==IResource), but I don&#39;t know what it is yet&quot;, and it seems to me the natural way of expressing that in Twisted is a Deferred.<br>

<br>cheers<br>lvh<br>