openwebbeans-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Struberg <strub...@yahoo.de>
Subject AW: Starting long running conversations
Date Wed, 11 Nov 2009 18:55:58 GMT
Yes,  I meant CID (the Conversation ID) ;)

I had a discussion with Pete a long time ago whether 299 should provide a static accessor
(like the FacesContext). This would also be very handy for legacy projects if not all parts
of the projects use a DI container and the injection chain is interrupted. But currently there
are only the 2 ways defined in the spec: via JNDI or via @Inject.

Look at webbeans-impl/src/main/java/org/apache/webbeans/spi/conversation/ConversationService.java
and the corresponding implementation in the webbeans-jsf. Maybe this helps.

LieGrue,
strub



>
>Von: Gurkan Erdogdu <gurkanerdogdu@yahoo.com>
>An: openwebbeans-user@incubator.apache.org
>Gesendet: Mittwoch, den 11. November 2009, 18:23:01 Uhr
>Betreff: Re: Starting long running conversations
>
>
>Hi Sven;
>
>I think that Mark would like to say CID.
>
>You can get BeanManager via injection @Inject BeanManager. You could also use internal
API ActivityManager.getInstance().getRootActivity()
>
>Thanks;
>
>--Gurkan
>
>
________________________________
From: Sven Linstaedt <sven.linstaedt@googlemail.com>
>To: openwebbeans-user@incubator.apache.org
>Sent: Wed, November 11, 2009 6:30:52 PM
>Subject: Re: Starting long running
> conversations
>
>> Hi Mark,
>
>I agree with you that this should not be part of the spec. I took a brief look at the
number guess example. In this application the conversation is started during a postback action
event. This implies the "calling" page knows about the fact, the upcoming page needs an long
running conversation, which is not the behavior I am looking for.
>
>Anyhow I have not understand your last sentence at all. I believe instead of CDI (context
and dependency injection?) you mean CID, which is managed by OWB.
>
>My current plan is writing a FaceletHandler, which is used in the view's metadata block
to annotate this view for requiring a long runnung conversation. For this task I have to lookup
the current conversation (likely) from the BeanManager, which in turn needs to be looked up
too. Do you know if there is any way to lookup the BeanManager from outside of CDI other than
trough JNDI's java:comp/BeanManager?
>
>br, Sven
>
>
>
>2009/11/11 Mark Struberg <struberg@yahoo.de>
>
>Hi Sven!
>>
>>JSR-299 doesn't define any such UI mechanisms like SEAM or Springs @Controllers.
>>But it would be pretty easy to implement those, e.g. in the guess sample.
>>>>It should imho not be part of the core though.
>>
>>As a small tip: We already have an OWB-internal SPI for conversation handling and
James and I managed to implement conversations for Wicket UIs. The basic question is where
to store something like the CDI of the FacesContext in the renderes html. 
>>
>>LieGrue,
>>strub 
>>
>>
>>>
>>>Von: Sven Linstaedt <sven.linstaedt@googlemail.com>
>>>An: openwebbeans-user@incubator.apache.org
>>>Gesendet: Mittwoch, den 11. November 2009, 0:04:45 Uhr
>>>Betreff: Starting long running conversations
>>>
>>>
>>>Hi,
>>>
>>>because I am just fiddling around with long running (aka non transient) conversations,
I would like to know, if someone has dealt with the problem of starting a long running conversation
during a nonfaces (GET) request before. 
>>>
>>>My current (not working) solution is, using a conversation scoped controller bean
in the view, which get's instantiated during the render response phase and which set the conversation'S
transient state in it's @PostConstruct method. Unfortunately OWB (have not tested weld yet)
does it's "conversation.isTransient()" check before that phase, so the conversation's ID won't
get populated to the view's attributes (org.apache.webbeans.jsf.WebBeansPhaseListener:170)
and thus is not available on the next post back, resulting in a new conversation being started.
>>>
>>>From my experience with Seam I remember they used some kind of external xml configuration
that maps URLs to action (like the traditional url controller frameworks like struts). I would
not like to use a similar mechanism in my application, because I do not like xml files after
all ;) so here is my question:
>>>
>>>What do you think is the best way to start a long running conversation from a
GET request?
>>>
>>>
>>>br, Sven
>>>
>>
>
>


      
Mime
View raw message