On Tue, 14 Apr 2015 16:17:48 -0300, Тимур Бухараев <bukhar...@gmail.com>
wrote:
The question is really about Tapestry rendering pipeline. I need iterate
over all components in page before they start render, to send remote
requests.
Well, in a page or component you can @Inject ComponentResources resources;
and use resources.getComponentModel().getEmbeddedComponentIds() to know
the ids of the components declared in its template and
resources.getEmbeddedComponent(String embeddedId), to get the component
instance, returned as a Component interface reference, and do this
recursively, traversing the component tree. You cannot add your own
component rendering lifecycle events. From now, you can define an
interface your "parallel" components can implement and call its methods in
case the component instances implement this interface. Another option,
maybe the most recommended, but you can trigger events on them by calling
getComponentResources().triggerEvent() method on the Component instance.
When Tapestry does bytecode manipulation on your page and component
classes, it makes them implement the Component interface.
By itself, the Tapestry rendering pipeline doesn't support parallel
rendering.
--
Thiago H. de Paula Figueiredo
Tapestry, Java and Hibernate consultant and developer
http://machina.com.br
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org