On 2/14/06, Jason Vincent <[EMAIL PROTECTED]> wrote:
>
> Hi All,
>
> I was wondering if there is an easy way to get a postRender method to
> be called in my Shale ViewController.
> Is a new Phase Listener the only / best option? Perhaps I can extend a
> Shale class to also call a postRender method?


Doesn't the destroy() method do what you want?  It is called after
rendering.

Here is my scenario:
> I have the concept of an ErrorEventCollector in the ViewController.
> Basically, the collector is passed around in the model calls to
> capture errors during the model execution.  This might include errors
> caused by validation checks on the retrieved data from the DB, as well
> as any exceptions.  These events can be generated in any phase - init,
> validation, application, or render.
>
> In my BaseViewController - I want to have the event collector checked
> for any events.  If there are events in the collector, then I want to
> create FacesMessages for each event.  I tried putting the check in the
> Shale destroy method, but the messages weren't being displayed by the
> JSP.  So It seems I need to have this check as the last step in the
> render_response phase.


Hmm ... destroy() *is* called by an afterPhase listener for the Render
Response phase, so something else must be going on here.

Note, of course, that any messages you *add* in the destroy() method will,
of course, not be rendered -- precisely because rendering *has* ben
completed.

Craig

Thanks for any help.
> Jason
>

Reply via email to