I have the following declaration in my pages.xml
<conversation name="cname" parameter-name="oid"
parameter-value="#{x.y}"/>
My page declaration is:
<page conversation="cname">
| <begin-conversation join="true"/>
| <param name="oid" value="#{componentLoader.oid}" />
| </page>
The componentLoader is a stateful session bean with conversation scope. My desire is to
instantiate only one such bean for any given oid. It almost works...
The bean is created in the correct scope and my page shows up with correct information. My
problem is that on that page, there is a ritch:dataTable. When clicking on a row in that
table, a commandLink action is executed which in turn causes some detailed information to
be displayed on the same page. This works most of the time (nine out of ten perhaps). But
then, all of the sudden, a new conversation is magically initialized and a new
componentLoader object is created. I know this because I have some trace in the @Create
method of the component loader. That trace prints the id of the injected conversation. I
can see that this unwanted bean is destroyed shortly after and a new attempt clicking on
the same link succeeds.
I've tried various things such as manipulating session and conversation timeouts,
adding other objects in between to hold on to the oid, etc. I want to figure out why this
extra conversation suddenly appears on the stack but so far, all my attempts have been in
vane.
I would really appreciate some input on this. What should I look for and where?
Regards,
Thomas Hallgren
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4070044#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...