You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by Denis Delangle <de...@gmail.com> on 2010/04/13 12:59:30 UTC

T5 : Empty content of on ajax request

Hello,

If a component renders it's parent's body (using <t:body/>) during an
ajax request, the body will be empty if
 * the parent's component template (basically the page) has been modified.
 * or the server was restarted.
 * or if a new page instance for your component is added to the page pool.

I submitted a bug report
https://issues.apache.org/jira/browse/TAP5-1100 for that.

This bug is painfull for me as I often use body inclusion. Am I the
only one to have run into this issue ? Is there any workaround ?

As far as I understood the problem is in ComponentPageElementImpl, if
we use a <t:body/> the render method of ComponentPageElementImpl is
not called, only the enqueueBeforeRenderBody is called (via the
RenderBodyElement). If the ComponentPageElementImpl was never rendered
before, the render phases are not initialized and the component
silently avoids rendering. Am I right ?


Thanks,

Denis

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: T5 : Empty content of on ajax request

Posted by Howard Lewis Ship <hl...@gmail.com>.
I saw the bug and will likely apply your patch soon.

On Tue, Apr 13, 2010 at 3:59 AM, Denis Delangle
<de...@gmail.com> wrote:
> Hello,
>
> If a component renders it's parent's body (using <t:body/>) during an
> ajax request, the body will be empty if
>  * the parent's component template (basically the page) has been modified.
>  * or the server was restarted.
>  * or if a new page instance for your component is added to the page pool.
>
> I submitted a bug report
> https://issues.apache.org/jira/browse/TAP5-1100 for that.
>
> This bug is painfull for me as I often use body inclusion. Am I the
> only one to have run into this issue ? Is there any workaround ?
>
> As far as I understood the problem is in ComponentPageElementImpl, if
> we use a <t:body/> the render method of ComponentPageElementImpl is
> not called, only the enqueueBeforeRenderBody is called (via the
> RenderBodyElement). If the ComponentPageElementImpl was never rendered
> before, the render phases are not initialized and the component
> silently avoids rendering. Am I right ?
>
>
> Thanks,
>
> Denis
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org