Okay, I now understand the issue...
I will explain this from my understanding and maybe a member of the Seam team
can validate (or invalidate) this. The use of <s:link>, @DataModel, and
@DataModelSelection can get complicated.
| <s:link value="#{item}" view="/page2.xhtml"/>
|
executes a GET request which will not process the INVOKE_APPLICATION phase but
will propagate the conversation. This is similar to the first invocation of a
JSF page, but maintains conversation state across the GET request.
By specifying an action, this indicates to Seam that the entire JSF lifecycle
should be processed for the GET. Thus, the INVOKE_APPLICATION phase gets
executed. This is when the @DataModelSelection is populated, explaining why
scenario 2 works:
| <s:link value="#{item}" view="/page2.xhtml" action="#{myObject.select()}"
/>
|
I believe you will have to invoke an action to retrieve the
@DataModelSelection. To my knowledge, all the examples show it this way...
In regards to multiple actions for one action, why don't you inject any other
components into the component being called on and execute actions from that
component. For example, if I have myObject,
| ...
| @In
| SecondObject secondObject;
| ...
| public void select() {
| // do something
| secondObject.function();
| }
| ...
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4084834#4084834
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4084834
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user