[jboss-user] [JBoss Seam] - Re: Really simple, please advice (passing h:dataTable to eve

stu2 do-not-reply at jboss.com
Thu May 3 15:28:40 EDT 2007


"viniciuscarvalho" wrote : Hi there! I have a really simple question, can not find the answer :(
  | 
  | I'm trying to start a conversation on a second page after the user clicks on 
  | a link in a view:
  | 
  | 
  |   | <h:dataTable value="#{customers}" var="c">
  |   | 
  |   | ....
  |   | 
  |   | <s:link id="startRentProcess" value="Start Rental" action="#{rentalService.start(c)}"/>
  |   | 
  |   | My RentalService:
  |   | 
  |   | @Name("rentalService")
  |   | @Stateful
  |   | @Scope(ScopeType.SESSION)
  |   | public class RentalBean implements RentalService {
  |   | 
  |   | @In(required=false) @Out
  |   | 	private Customer customer;
  |   | @Begin
  |   | 	public void start(Customer c) {
  |   | 		rental = new Rental();
  |   | 		customer = c;
  |   | 		rental.setCustomer(c);
  |   | 	}
  |   | 
  | 
  | The previous page is backed by a SLSB. When I get at the start, the Customer is null, not the one I've selected through the <s:link>
  | 
  | What am I missing? Do I need a @DataModelSelection?
  | 
  | Best regards
  | 
  | 
  | 
  | 

The easiest way would be to use a @RequestParameter variable in your SFSB, like this:

@RequestParameter String customerId;

and

<s:link id="startRentProcess" value="Start Rental" action="#{rentalService.start()}">
  |    <f:param name="customerId" value="#{customer.id}"/>
  | </s:link>

Seam will set the variable when the link is clicked, and you can retrieve the customer at that point.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4042955#4042955

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4042955



More information about the jboss-user mailing list