how to persist data from selectManyCheckbox
wadhah Jan 3, 2011 2:38 PMhello every body how to persist data from selectManyCheckbox ?
I have a list of roles i would like to persist them
package org.domain.seam.entity; import java.io.Serializable; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.GeneratedValue; import javax.persistence.Table; import org.hibernate.validator.Length; import org.jboss.seam.annotations.Name; import org.jboss.seam.annotations.security.management.RoleName; @Name("role") @Entity @Table(name = "Role") public class Role implements Serializable { /** * */ private static final long serialVersionUID = 2392158972471437066L; private Long id; private String rolename; @Id @GeneratedValue public Long getId() { return id; } public void setId(Long id) { this.id = id; } @RoleName @Length(max = 20) public String getName() { return rolename; } public void setName(String rolename) { this.rolename = rolename; } }
package org.domain.seam.entity; import java.io.Serializable; import java.util.HashSet; import java.util.Set; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.GeneratedValue; import javax.persistence.JoinColumn; import javax.persistence.JoinTable; import javax.persistence.ManyToMany; import javax.persistence.Table; import org.hibernate.validator.Length; import org.hibernate.validator.NotNull; import org.jboss.seam.annotations.Name; import org.jboss.seam.annotations.security.management.UserRoles; @Entity @Name("user") @Table(name = "User") public class User implements Serializable { /** * */ private static final long serialVersionUID = -2133760147013842042L; private Long id; private String name; private String password; private String username; private Set<Role> roles = new HashSet<Role>(); @Id @GeneratedValue public Long getId() { return id; } public void setId(Long id) { this.id = id; } @Length(max = 20) @NotNull public String getName() { return name; } public void setName(String name) { this.name = name; } @Length(max = 20) @NotNull public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } @Length(max = 20) @NotNull public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } @ManyToMany(targetEntity = Role.class) @UserRoles @JoinTable(name = "UsersRoles", joinColumns = @JoinColumn(name = "user_id"), inverseJoinColumns = @JoinColumn(name = "role_id")) public Set<Role> getRoles() { return roles; } public void setRoles(Set<Role> roles) { this.roles = roles; } }
Roles: <h:selectManyCheckbox> <f:selectItem itemLabel="Agent" itemValue="Agent" /> <f:selectItem itemLabel="Admin" itemValue="Admin" /> </h:selectManyCheckbox>