Please help ! Can't persist data into related tables
valsart Feb 6, 2008 8:52 AMHello !
I'm trying to persist some data into related tables for more then a week, but it's not working at all..
Please Help !
This is the code...
package com.st.st;
// Generated 06.02.2008 1:13:21 by Hibernate Tools 3.2.0.b10
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import org.hibernate.validator.NotNull;
/**
 * Info generated by hbm2java
 */
@Entity
@Table(name = "info", catalog = "seamtest")
@Name("info")
public class Info implements java.io.Serializable {
 private Integer infoId;
 private User user;
 private int infoFullPayment;
 public Info() {
 }
 public Info(User user, int infoFullPayment) {
 this.user = user;
 this.infoFullPayment = infoFullPayment;
 }
 @Id
 @GeneratedValue(strategy = IDENTITY)
 @Column(name = "info_id", unique = true, nullable = false)
 public Integer getInfoId() {
 return this.infoId;
 }
 public void setInfoId(Integer infoId) {
 this.infoId = infoId;
 }
 @ManyToOne(fetch = FetchType.LAZY)
 @JoinColumn(name = "user_id", nullable = false)
 @NotNull
 public User getUser() {
 return this.user;
 }
 public void setUser(User user) {
 this.user = user;
 }
 @Column(name = "info_full_payment", nullable = false)
 @NotNull
 public int getInfoFullPayment() {
 return this.infoFullPayment;
 }
 public void setInfoFullPayment(int infoFullPayment) {
 this.infoFullPayment = infoFullPayment;
 }
}
package com.st.st;
// Generated 06.02.2008 1:13:21 by Hibernate Tools 3.2.0.b10
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import org.hibernate.validator.NotNull;
/**
 * User generated by hbm2java
 */
@Entity
@Table(name = "user", catalog = "seamtest")
@Name("user")
public class User implements java.io.Serializable {
 private Integer userId;
 private int userPayment;
 private Set<Info> infos = new HashSet<Info>(0);
 public User() {
 }
 public User(int userPayment) {
 this.userPayment = userPayment;
 }
 public User(int userPayment, Set<Info> infos) {
 this.userPayment = userPayment;
 this.infos = infos;
 }
 @Id
 @GeneratedValue(strategy = IDENTITY)
 @Column(name = "user_id", unique = true, nullable = false)
 public Integer getUserId() {
 return this.userId;
 }
 public void setUserId(Integer userId) {
 this.userId = userId;
 }
 @Column(name = "user_payment", nullable = false)
 @NotNull
 public int getUserPayment() {
 return this.userPayment;
 }
 public void setUserPayment(int userPayment) {
 this.userPayment = userPayment;
 }
 @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "user")
 public Set<Info> getInfos() {
 return this.infos;
 }
 public void setInfos(Set<Info> infos) {
 this.infos = infos;
 }
}
package com.st.st;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
import com.st.st.insert;
@Name("insert")
public @Stateless class insertBean implements insert {
 @In private User user;
 @In private Info info;
 @PersistenceContext private EntityManager em;
 public void insert(Integer userPayment, Integer infoFullPayment){
 Info info = new Info();
 info.setInfoFullPayment(infoFullPayment);
 User user = new User();
 userPayment = infoFullPayment*2;
 user.setUserPayment(userPayment);
 info.setUser(user);
 em.persist(info);
 }
}
package com.st.st;
import javax.ejb.Local;
@Local
public interface insert {
 public void insert(Integer userPayment, Integer infoFullPayment);
}
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
 xmlns:s="http://jboss.com/products/seam/taglib"
 xmlns:ui="http://java.sun.com/jsf/facelets"
 xmlns:f="http://java.sun.com/jsf/core"
 xmlns:h="http://java.sun.com/jsf/html"
 xmlns:a="http://richfaces.org/a4j"
 xmlns:rich="http://richfaces.org/rich"
 template="layout/template.xhtml">
<ui:define name="body">
<h:form>
 <h:inputText value="#{info.infoFullPayment}"/>
 <h:commandButton value="push" action="#{insert.insert}"/>
</h:form>
 </ui:define>
</ui:composition>
 
    