shale-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Craig McClanahan" <>
Subject Re: SHALE-409 Bug
Date Tue, 01 May 2007 21:11:10 GMT
On 5/1/07, Gary VanMatre <> wrote:
> >From: "hughes.matt" <>
> >
> >
> > As best as I can tell there is a bug in the ViewPhaseListener in shale-view
> > that is breaking other libraries, namely ajax4jsf by removing ALL entries
> > from the request map. I'd gladly fix this, but I can't tell what the code
> > should be doing.
> >
> What I think is going on here is that the phase listener is collecting
> "ViewController" objects that are explicitly removed from request
> scope.  Forcing the object to be removed will fire the destroy
> callback method on the shale enhanced managed beans [1].

Yes, that is definitely the intent here.

> I think the second loop should be looking for realization/
> generalization the of the View annotation, AbstractApplication,
> AbstractRequestBean, AbstractSessionBean, and ViewController
> versus blindly treating every request value as one of those types.

We're talking about the afterRenderResponse() method, right?

The first loop takes care of ViewController (which therefore includes
AbstractViewController) and AbstractRequestBean.  There is no need to
deal with AbstractSessionBean and AbstractApplicationBean, because
those never get installed in request scope.

The *intent* of the second loop is to pick up beans from shale-tiger
that might have been annotated with @Bean or @View, but without
requiring JDK 1.5.  Unfortunately, it is picking up *all* remaining
request scope beans.  I think the right fix is to place the intended
logic of the second loop in a phase listener in shale-tiger instead of
in shale-view.


> [1]
> > I have detailed the bug here:
> >
> >
> > --
> > View this message in context:
> >
> > Sent from the Shale - Dev mailing list archive at
> >
> Gary

View raw message