Using OneToMany with SEAM and JSF
rgbg5 Jan 29, 2008 4:38 AMHello,
i am totally new to SEAM and JSF, so i hope you dont mind if this is a stupid question or posted to the wrong forum. I just couldnt find a example for this.
I have a Entity class called Contacts which looks like this
package gfm.entity;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.hibernate.annotations.CascadeType;
import org.jboss.seam.annotations.Name;
@Entity
@Name("contact")
public class Contact implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@org.hibernate.annotations.GenericGenerator(name="uuid_gen", strategy="uuid")
@GeneratedValue(generator="uuid_gen")
private String puid;
private String title;
private String firstName;
private String middleName;
private String lastName;
private String company;
private String department;
@Temporal(TemporalType.DATE)
private Date birthday;
@Lob
private String notes;
@org.hibernate.annotations.CollectionOfElements
@org.hibernate.annotations.IndexColumn(name="idx")
@org.hibernate.annotations.Cascade(CascadeType.DELETE_ORPHAN)
@JoinColumn(name="contact_puid")
private List<StreetAddress> streetAddresses = new ArrayList<StreetAddress>();
@org.hibernate.annotations.CollectionOfElements
@org.hibernate.annotations.IndexColumn(name="idx")
@org.hibernate.annotations.Cascade(CascadeType.DELETE_ORPHAN)
@JoinColumn(name="contact_puid")
private List<EmailAddress> emailAddresses = new ArrayList<EmailAddress>();
@org.hibernate.annotations.CollectionOfElements
@org.hibernate.annotations.IndexColumn(name="idx")
@org.hibernate.annotations.Cascade(CascadeType.DELETE_ORPHAN)
@JoinColumn(name="contact_puid")
private List<CommNumber> commNumbers = new ArrayList<CommNumber>();
// Getter and setter .....
}
Each contact could have an unlimited number of addresses, emailaddresses and phone and faxnumbers.
The question is, how do i reference a single streetaddress from within a JSF Page ? and how do i add new streetadresses to contact ? I hope i explained that right.
An example or code snippet would be great.
Thank you very much,
Stefan