Bonjour, j'ai pas pu ajouter une ligne dans la table Naissance, a cause de du Mapping à ce que je pense, voilà j'ai deux classes, NaissanceModel et HopitalModel,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
46
package model;
 
import java.io.Serializable;
import java.util.Date;
 
import com.opensymphony.xwork2.ActionSupport;
 
public class NaissanceModel implements Serializable {
	private int id;
	private String prenom;
	private String nom;
	private Date date_naissance;
 
	public int getId() {
		return id;
	}
 
	public void setId(int id) {
		this.id = id;
	}
 
	public String getPrenom() {
		return prenom;
	}
 
	public void setPrenom(String prenom) {
		prenom = prenom;
	}
 
	public String getNom() {
		return nom;
	}
 
	public void setNom(String nom) {
		this.nom = nom;
	}
 
	public Date getDate_naissance() {
		return date_naissance;
	}
 
	public void setDate_naissance(Date date_naissance) {
		this.date_naissance = date_naissance;
	}
 
}
et HopitalModel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
package model;
 
import java.io.Serializable;
import java.util.List;
 
public class HopitalModel implements Serializable {
	private int id;
	private String nom;
	private String ville;
	private List<NaissanceModel> naissance ;
 
	public List<NaissanceModel> getNaissance() {
		return naissance;
	}
 
	public void setNaissance(List<NaissanceModel> naissance) {
		this.naissance = naissance;
	}
 
	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 getVille() {
		return ville;
	}
 
	public void setVille(String ville) {
		this.ville = ville;
	}
 
}
et Voici mon Hopital.hbm.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
	<class name="model.HopitalModel" table="HOPITAL">
		<id name="id" column="ID" type="integer">
			<generator class="increment" />
		</id>
		<property name="nom" column="NOM" type="string"></property>
		<property name="ville" column="VILLE" type="string"></property>
		<list name="naissance" table="NAISSANCE" cascade="none" lazy="true" >
			<key column="HOPITAL"></key>
			<list-index base="0" column="IDX"></list-index>
			<one-to-many class="model.NaissanceModel" />
		</list>
	</class>
</hibernate-mapping>
et mon Naissance.hbm.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
	<class name="model.NaissanceModel" table="NAISSANCE">
		<id name="id" column="ID" type="integer">
			<generator class="increment"></generator>
		</id>
		<property name="prenom" column="PRENOM" type="string"></property>
		<property name="nom" column="NOM" type="string"></property>
		<property name="date_naissance" column="DATE_NAISSANCE" type="date"></property>
	</class>
</hibernate-mapping>
J'ai crée un Service Naissance ou je mets tous mes Méthodes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
46
47
48
49
50
51
52
53
54
55
package service;
 
import java.util.List;
 
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
 
import com.sun.net.httpserver.Authenticator.Success;
 
import model.HopitalModel;
import model.NaissanceModel;
import util.HibernateUtil;
 
public class NaissanceService {
	public List<HopitalModel> list() {
		SessionFactory sf = HibernateUtil.getSessionFactory();
		Session s = sf.openSession();
		Transaction ts = s.beginTransaction();
		List<HopitalModel> Hopitaux = null;
		try {
 
			Hopitaux = (List<HopitalModel>) s.createQuery("from HopitalModel")
					.list();
 
		} catch (HibernateException e) {
			e.printStackTrace();
			s.getTransaction().rollback();
		}
		s.flush();
		ts.commit();
		s.close();
		return Hopitaux;
 
	}
 
	public String add_naissance(NaissanceModel ns) {
		try {
			SessionFactory sf = HibernateUtil.getSessionFactory();
			Session s = sf.openSession();
			Transaction ts = s.beginTransaction();
			s.save(ns);
			s.flush();
			ts.commit();
			s.close();
			return "success";
 
		} catch (Exception e) {
			e.printStackTrace();
			return "failure";
		}
 
	}
}
et après voici mon action classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
46
47
48
package action;
 
import java.util.List;
 
import service.NaissanceService;
import model.HopitalModel;
import model.NaissanceModel;
 
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
 
public class NaissanceAction extends ActionSupport implements ModelDriven<NaissanceModel> {
 
	NaissanceService ns = new NaissanceService();
	NaissanceModel nm = new NaissanceModel();
	private List<HopitalModel> HopitauxList;
 
	public NaissanceAction() {
		// TODO Auto-generated constructor stub
		ns = new NaissanceService();
	}
 
	public String execute() {
		HopitauxList = ns.list();
		return SUCCESS;
	}
 
	public String addnaissance() {
		String response = ns.add_naissance(nm);
		System.out.println(response);
		return response;
	}
 
	public List<HopitalModel> getHopitauxList() {
		return HopitauxList;
	}
 
	public void setHopitauxList(List<HopitalModel> hopitauxList) {
		HopitauxList = hopitauxList;
	}
 
	@Override
	public NaissanceModel getModel() {
		// TODO Auto-generated method stub
		return nm;
	}
 
}
et Enfin voici mon struts.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<constant name="struts.enable.DynamicMethodInvocation" value="false"></constant>
	<package name="default" extends="struts-default">
 
		<action name="login" class="action.LoginAction" method="Velogin">
			<result name="success" type="redirectAction">accueil</result>
			<result name="input">/login.jsp</result>
			<result name="failure">/login.jsp</result>
		</action>
		<action name="addnais" class="action.NaissanceAction" method="addnaissance">
			<result name="success" type="redirectAction">accueil</result>
			<result name="input" type="redirectAction">accueil</result>
			<result name="failure">accueil.jsp</result>
		</action>
		<action name="add_hop" class="action.HopitalAction" method="add">
			<result name="success" type="redirectAction" >accueil</result>
			<result name="input">/login.jsp</result>
			<result name="failure">/login.jsp</result>
		</action>
		<action name="accueil" class="action.NaissanceAction">
			<result name="success">accueil.jsp</result>
			<result name="input">accueil.jsp</result>
		</action>
 
	</package>
 
</struts>
Dans ma base de données
j'ai deux tables
Desc Hopital;
int id, String nom, String ville

Desc naissance;
int id,String prenom, String nom,date date_naissance,HOPITAL,IDX
Vraiment j'ai galéré pour ajouter une ligne mais son aucun resultat alors si vous pouvez m'aider je serai trop reconnaissant, merci