IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

PB sauvgarde en cascade Cle Composé


Sujet :

Hibernate Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 19
    Points : 7
    Points
    7
    Par défaut PB sauvgarde en cascade Cle Composé
    Salut,
    en faite j arrive pas a comprendre pourquoi ma sauvgarde en cascade se passe bien quand l objet a sauvgarder à comme attribut un Set dont le type est un objet mapper avec une table a cle premiere unique
    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
     
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    	"-//Hibernate/Hibernate Mapping DTD//EN"
    	"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
     
    <hibernate-mapping package="com.sbpm.modele">
    	<class name="Clients" table="CLIENTS">
    		<id
    			column="NUMCLIENT"
    			name="NUMCLIENT"
    			type="integer"
    		>
    			<generator class="vm" />
    		</id>
    		<property
    			column="NOMCLIENT"
    			length="60"
    			name="NOMCLIENT"
    			not-null="false"
    			type="string"
    		 />
     
    		<set inverse="true" name="CONTACTSSet" cascade="all-delete-orphan">
    			<key column="NUMENTREPRISE" />
    			<one-to-many class="Contacts" />
    		</set>
     
    	</class>
    </hibernate-mapping>
    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
     
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    	"-//Hibernate/Hibernate Mapping DTD//EN"
    	"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
     
    <hibernate-mapping package="com.sbpm.modele">
    	<class name="Contacts" table="CONTACTS">
    		<id
    			column="NUMCONTACT"
    			name="Numcontact"
    			type="integer"
    		>
    			<generator class="vm" />
    		</id>
    		<property
    			column="NOMCONTACT"
    			length="40"
    			name="Nomcontact"
    			not-null="false"
    			type="string"
    		 />
    		<many-to-one
    			class="Clients"
    			name="NUMCLIENT"
    			not-null="true"
    		>
    			<column name="NUMCLIENT" />
    		</many-to-one>
     
    	</class>
    </hibernate-mapping>
    et se passe mal l objet a sauvgarder à comme attribut un Set dont le type est un objet mapper avec une table a cle premiere compose

    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
     
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    	"-//Hibernate/Hibernate Mapping DTD//EN"
    	"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
     
    <hibernate-mapping package="com.sbpm.modele">
    	<class name="Collaborateurs" table="COLLABORATEURS">
    		<id
    			column="NUMCOLLABO"
    			name="Numcollabo"
    			type="integer"
    		>
    			<generator class="vm" />
    		</id>
    		<property
    			column="NOM"
    			length="40"
    			name="Nom"
    			not-null="false"
    			type="string"
    		 />
    		<set inverse="true" name="COLLABOLANGUESet" cascade="all-delete-orphan">
    			<key column="NUMCOLLABO" />
    			<one-to-many class="Collabolangue" />
    		</set>
    	</class>
    </hibernate-mapping>
    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
     
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    	"-//Hibernate/Hibernate Mapping DTD//EN"
    	"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
     
    <hibernate-mapping package="com.sbpm.modele">
    	<class name="Langues" table="LANGUES">
    		<id
    			column="NUMLANGUE"
    			name="Numlangue"
    			type="integer"
    		>
    			<generator class="vm" />
    		</id>
    		<property
    			column="NOMLANGUE"
    			length="50"
    			name="Nomlangue"
    			not-null="false"
    			type="string"
    		 />
    		<set inverse="true" name="COLLABOLANGUESet">
    			<key column="NUMLANGUE" />
    			<one-to-many class="Collabolangue" />
    		</set>
    	</class>
    </hibernate-mapping>
    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
     
    public abstract class Collabolangue  implements Serializable {
     
    	public static String PROP_ID = "Id";
    	public static String PROP_NIVEAU = "Niveau";
     
     
    	private int hashCode = Integer.MIN_VALUE;
     
    	// primary key
    	private com.sbpm.modele.COLLABOLANGUEPK _id;
     
    	// fields
    	private java.lang.String _niveau;
     
         //CONSTRUCTOR
    }
    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
     
    public class COLLABOLANGUEPK extends BaseCOLLABOLANGUEPK {
     
    /*[CONSTRUCTOR MARKER BEGIN]*/
    	public COLLABOLANGUEPK () {}
     
    	public COLLABOLANGUEPK (
    		com.sbpm.modele.Langues _numlangue,
    		com.sbpm.modele.Collaborateurs _numcollabo) {
     
    		super (
    		_numlangue,
    		_numcollabo);
    	}
    /*[CONSTRUCTOR MARKER END]*/
    }

  2. #2
    Membre régulier Avatar de nighthammer
    Profil pro
    Développeur Java
    Inscrit en
    Juillet 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2005
    Messages : 122
    Points : 115
    Points
    115
    Par défaut
    Je pense que dans ton set il faut que tu rajoute un cascade="all"

    ce qui te donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <set inverse="true" name="COLLABOLANGUESet" cascade="all">

Discussions similaires

  1. Delete on cascade avec SQL server
    Par fadoua dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 14/01/2004, 11h02
  2. Published property d'un compo conservées pendant l'exécution
    Par bobby-b dans le forum Composants VCL
    Réponses: 2
    Dernier message: 04/09/2003, 10h15
  3. supprimer une ligne avec cle etrangere
    Par BaBas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2003, 11h24
  4. [VB6] Modifier la clé d'un élément d'une collection
    Par Ricou13 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/11/2002, 14h49
  5. cle pour programme
    Par mumu2001 dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 04/11/2002, 10h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo