[jboss-user] [JBoss Seam] - Re: Multiple Seam DataModelSelection in one action: Selectio

bram_ do-not-reply at jboss.com
Tue Jul 10 04:47:41 EDT 2007


This is the working code:

Abstract class:

  | package com.nxp.cda.commons.controller;
  | 
  | import java.math.BigDecimal;
  | ...
  | import org.jboss.seam.annotations.datamodel.DataModel;
  | import org.jboss.seam.annotations.datamodel.DataModelSelection;
  | ...
  | import com.nxp.cda.commons.model.DomainObject;
  | public abstract class AbstractSearchAction<T extends DomainObject> implements
  | 		SearchAction<T> {
  | /**Current (selected) object  */
  | @DataModelSelection("searchResults")
  | @Out(required = false)
  | protected T current;
  | 
  | /**Resultset.*/
  | @DataModel
  | protected List<T> searchResults;
  | 
  | public List<T> getSearchResults() {
  | 	return this.searchResults;
  | }
  | 
  | protected void setSearchResults(List<T> searchResults) {
  | 	this.searchResults = searchResults;
  | }
  | 
  | public T getCurrent() {
  | 	return current;
  | }
  | 
  | public void setCurrent(T current) {
  | 	this.current = current;
  | }
  | 
  | }
  | 

And the specific implementation:

  | package com.nxp.atinvestor.web.controller;
  | 
  | ...
  | import org.jboss.seam.annotations.datamodel.DataModel;
  | import org.jboss.seam.annotations.datamodel.DataModelSelection;
  | 
  | import com.nxp.atinvestor.domain.Investment;
  | import com.nxp.atinvestor.domain.OrganizationalLevel;
  | import com.nxp.atinvestor.domain.User;
  | import com.nxp.cda.commons.controller.AbstractAction;
  | ...
  | 
  | @Stateful
  | @Name("userAction")
  | @Scope(ScopeType.SESSION)
  | public class UserActionImpl extends AbstractAction<User> 
  | implements UserAction {
  | 
  | 	/** The current user: */
  | 	private User user;
  | 	/** All OrganizationalLevels that this user is an approver of. */
  |  // This is the secondary model:@DataModel
  | 	private List<OrganizationalLevel> organizationalLevels;
  | 	
  |  // This is the secondary model selected item:@DataModelSelection("organizationalLevels")
  | 	private OrganizationalLevel currentOrganizationalLevel;
  | 	
  | 	public List<OrganizationalLevel> getOrganizationalLevels() {
  | 		return organizationalLevels;
  | 	}
  | 
  | 	public void setOrganizationalLevels(
  | 			List<OrganizationalLevel> organizationalLevels) {
  | 		this.organizationalLevels = organizationalLevels;
  | 	}
  | 
  | 
  | 	public OrganizationalLevel getCurrentOrganizationalLevel() {
  | 		return currentOrganizationalLevel;
  | 	}
  | 
  | 	public void setCurrentOrganizationalLevel(
  | 			OrganizationalLevel currentOrganizationalLevel) {
  | 		this.currentOrganizationalLevel = currentOrganizationalLevel;
  | 	}
  | 
  | }
  | 

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

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



More information about the jboss-user mailing list