Récupérer données dans une autre page
Salut,
j'ai une formulaire pour ajouter un étudiant dans la base de données, je veux quand j'ajouter l'étudiant, dans le même temps l'étudiant sera récupérée pour afficher leur formation dans l'autre page welcome
je fais
<f: liaison actionListener = "# {beanEtudiant.getEtd (beanEtudiant.etudiant.id)}" />
Mais ça ne fonctionne pas :(
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
@Entity
public class Etudiant implements java.io.Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "ID")
@SequenceGenerator(name = "ID", sequenceName = "ID_SQ")
private int id;
private String nom;
private String prenom;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getPrenom() {
return prenom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
public class ImplEtudiant implements IEtudiant{
@Override
public void ajoutEtudiant(Etudiant etd) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction tx = session.beginTransaction();
session.save(etd);
tx.commit();
session.close();
}
@Override
public Etudiant getEtudiant(int id) {
Session session = HibernateUtil.getSessionFactory().openSession();
Etudiant etd = (Etudiant) session.get(Etudiant.class, id);
session.close();
return etd;
}
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
@ManagedBean
@ViewScoped
public class BeanEtudiant {
private IEtudiant dao;
private Etudiant etudiant;
private List<Etudiant> etudiants;
@PostConstruct
public void init() {
etudiant = new Etudiant();
dao = new ImplEtudiant();
etudiants = new ArrayList<Etudiant>();
}
public void ajouc() {
dao.ajoutEtudiant(etudiant);
etudiant = new Etudiant();
}
public Etudiant getEtd(int id) {
etudiant = dao.getEtudiant(id);
return etudiant;
} |
index.xhtml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
<h:form>
<h:panelGrid>
<h:outputText value="nom:" />
<h:inputText value="#{beanEtudiant.etudiant.nom}" />
<h:outputText value="prenom:" />
<h:inputText value="#{beanEtudiant.etudiant.prenom}" />
<h:outputText value="age:" />
<h:inputText value="#{beanEtudiant.etudiant.age}" />
</h:panelGrid>
<h:commandButton value="sauvegarder" actionListener="#{beanEtudiant.ajouc()}" action="welcome?faces-redirect=true">
<f:actionListener binding="#{beanEtudiant.getEtd(beanEtudiant.etudiant.id)}" />
</h:commandButton>
</h:form> |
welcome.xhtml
Code:
1 2 3 4 5 6 7
|
<h:form>
<h:outputText value="#{confirmBean2.etudiant.id}" />
<h:outputText value="#{confirmBean2.etudiant.nom}" />
<h:outputText value="#{confirmBean2.etudiant.prenom}" />
<h:outputText value="#{confirmBean2.etudiant.age}" />
</h:form> |