Before.
On Sat, May 30, 2009 at 2:11 PM, Clint Popetz <cpopetz(a)gmail.com> wrote:
Before or after servlet filters have run?
-Clint
On Sat, May 30, 2009 at 4:08 PM, Gavin King <gavin.king(a)gmail.com> wrote:
>
> The point is that the container would be required to fire it on *all*
> servlet requests.
>
> On Sat, May 30, 2009 at 2:08 PM, Clint Popetz <cpopetz(a)gmail.com> wrote:
> > I presume this event is only being fired from the WebBeansPhaseListener
> > and
> > won't exist for non-faces requests?
> >
> > -Clint
> >
> > On Sat, May 30, 2009 at 3:41 PM, Gavin King <gavin.king(a)gmail.com>
> > wrote:
> >>
> >> Or we could say it is an event that is observable by Extensions:
> >>
> >> void request(@Observes BeforeRestoreConversation brc) {
> >> brc.setId( brc.getRequest().getParameter("specialcid") );
> >> }
> >>
> >> where we define the following interface:
> >>
> >> public interface BeforeRestoreConversation {
> >> String getId();
> >> void setId(String id);
> >> ServletContext getContext();
> >> HttpServletRequest getRequest();
> >> }
> >>
> >> This seems to me like the better option, WDYT?
> >>
> >> On Sat, May 30, 2009 at 1:31 PM, Gavin King <gavin.king(a)gmail.com>
> >> wrote:
> >> > On Sat, May 30, 2009 at 12:43 PM, Gavin King
<gavin.king(a)gmail.com>
> >> > wrote:
> >> >
> >> >>> Looking at the Conversation public API I don't see any
programmatic
> >> >>> way to restore a conversation. Perhaps we should add such an
API?
> >> >>
> >> >> Ugh, I really didn't want to go there in this release, though
it
> >> >> would, very clearly, be a very useful feature.
> >> >>
> >> >> If we were going to go there, the way I would do it is to say that
> >> >> the
> >> >> conversation context is defined for all servlet requests, but it
is
> >> >> by
> >> >> default transient. The container would be required to call back to
> >> >> Extensions to obtain a conversation id.
> >> >
> >> > Actually, upon reflection, I think we need to do this :-/
> >> >
> >> > Because even in JSF, we want a way to customize the mechanism for
> >> > conversation propagation.
> >> >
> >> > So we could say that an Extension may optionally implement this
> >> > interface:
> >> >
> >> > public interface ConversationExtension {
> >> > String getConversationId(HttpServletRequest request,
> >> > ServletContext context);
> >> > }
> >> >
> >> > And say that before any Filter is called, the container calls all
> >> > ConversationExtensions looking for a conversation id, and if it finds
> >> > one, restores the conversation.
> >> >
> >> > Alternatively, we could say that the conversation is only restored
> >> > *after* all ServletFilters have been called, and say that the
> >> > container looks in a specially-named request attribute, for example
> >> > "javax.contexts.spi.conversationId". Then we would not need a
special
> >> > interface, and any servlet filter could do conversation management.
> >> > This seems more elegant, but means you don't get a conversation
> >> > context in your filters.
> >> >
> >> > WDYT?
> >> >
> >> > --
> >> > Gavin King
> >> > gavin.king(a)gmail.com
> >> >
http://in.relation.to/Bloggers/Gavin
> >> >
http://hibernate.org
> >> >
http://seamframework.org
> >> >
> >>
> >>
> >>
> >> --
> >> Gavin King
> >> gavin.king(a)gmail.com
> >>
http://in.relation.to/Bloggers/Gavin
> >>
http://hibernate.org
> >>
http://seamframework.org
> >>
> >> _______________________________________________
> >> webbeans-dev mailing list
> >> webbeans-dev(a)lists.jboss.org
> >>
https://lists.jboss.org/mailman/listinfo/webbeans-dev
> >
> >
> >
> > --
> > Clint Popetz
> >
http://42lines.net
> > Scalable Web Application Development
> >
>
>
>
> --
> Gavin King
> gavin.king(a)gmail.com
>
http://in.relation.to/Bloggers/Gavin
>
http://hibernate.org
>
http://seamframework.org
--
Clint Popetz
http://42lines.net
Scalable Web Application Development