-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 13 posts ] 
Author Message
 Post subject: versioning et horodatage
PostPosted: Mon May 23, 2005 9:30 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
salut !!

Je voudrais savoir comment fonctionne le versioning sous Hibernate et comment l'horodatage est-il pris en compte?

merci


hibernate 3.0


Top
 Profile  
 
 Post subject:
PostPosted: Mon May 23, 2005 1:40 pm 
Hibernate Team
Hibernate Team

Joined: Thu Dec 18, 2003 9:55 am
Posts: 1977
Location: France
le doc de référence explique tout cela.
Soit tu utilises <version/>, soit <timestamp/>

apres tu laisses hibernate gérer la concurrence et la mise à jour de la colonne technique

_________________
Anthony,
Get value thanks to your skills: http://www.redhat.com/certification


Top
 Profile  
 
 Post subject: versioning et horodatage
PostPosted: Tue May 24, 2005 5:28 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
merci.


Ce que j'ai compris:

Si l'on veut mettre un système de versioning dans notre application, il faut rajouter dans le fichier hbm.xml un élément comme une property, apellé <version >ou<timestamp>

<class>
<id>.....</id>
<property>....</property>
<property>....</property>
<property>....</property>
<version>....</version>
</class>


Quand je lance l'outil de génération de code java, il me dit que j'ai une erreur:

org.hibernate.MappingException: Error reading resource: fr/icdc/dei/fwk/sample/dto/DepartementBean.hbm.xml
at org.hibernate.cfg.Configuration.addResource(Configuration.java:447)
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1392)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1364)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1346)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1313)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1275)
at org.hibernate.console.ConsoleConfiguration.buildWith(ConsoleConfiguration.java:152)
at org.hibernate.eclipse.console.wizards.ArtifactGeneratorWizard.buildConfiguration(ArtifactGeneratorWizard.java:226)
at org.hibernate.eclipse.console.wizards.ArtifactGeneratorWizard.doFinish(ArtifactGeneratorWizard.java:147)
at org.hibernate.eclipse.console.wizards.ArtifactGeneratorWizard.access$0(ArtifactGeneratorWizard.java:127)
at org.hibernate.eclipse.console.wizards.ArtifactGeneratorWizard$1.run(ArtifactGeneratorWizard.java:95)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:111)
Caused by: org.hibernate.MappingException: invalid mapping
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:394)
at org.hibernate.cfg.Configuration.addResource(Configuration.java:444)
... 11 more
Caused by: org.xml.sax.SAXParseException: Lélément "{0}" naccepte pas "version" ici.
at org.apache.crimson.parser.Parser2.error(Unknown Source)
at org.apache.crimson.parser.ValidatingParser$ChildrenValidator.consume(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.parseInternal(Unknown Source)
at org.apache.crimson.parser.Parser2.parse(Unknown Source)
at org.apache.crimson.parser.XMLReaderImpl.parse(Unknown Source)
at org.dom4j.io.SAXReader.read(SAXReader.java:334)
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:393)
... 12 more





merci de m'aider

julien


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 24, 2005 8:15 am 
Hibernate Team
Hibernate Team

Joined: Thu Dec 18, 2003 9:55 am
Posts: 1977
Location: France
version se place juste apres id

_________________
Anthony,
Get value thanks to your skills: http://www.redhat.com/certification


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 24, 2005 9:04 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
anthony wrote:
version se place juste apres id


ok merci
Je ne comprends pas comment la version est incrémenté et comment je peux par exemple affiché sa valeur.


merci


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 24, 2005 10:49 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
julientarrago wrote:
anthony wrote:
version se place juste apres id


ok merci
Je ne comprends pas comment la version est incrémenté et comment je peux par exemple affiché sa valeur.


merci


Est-ce qu'il faut que j'incrémente moi-même la version?

Pour l'instant je récupère un objet, je modifie des valeurs, mais je n'arrive toujours pas à récupérer la veleur de la version.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 24, 2005 11:36 am 
Hibernate Team
Hibernate Team

Joined: Thu Dec 18, 2003 9:55 am
Posts: 1977
Location: France
???
ton colonne version est mappée à un attribut de ta classe persistante non?
donc as tu essayé monPojo.getVersion()?
Code:
<version
        column="version_column"                                      (1)
        name="propertyName"                                          (2)
        type="typename"                                              (3)
        access="field|property|ClassName"                            (4)
        unsaved-value="null|negative|undefined"                      (5)
        node="element-name|@attribute-name|element/@attribute|."
/>

_________________
Anthony,
Get value thanks to your skills: http://www.redhat.com/certification


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 24, 2005 11:44 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
voilà mon fichier hbm.xml:

<class name="Departement" table="DEPARTEMENT" schema="HIBERNATE">
<id name="IdDepartement" type="java.lang.Integer">
<column name="ID_DEPARTEMENT" scale="6" precision="0" not-null="true" unique="true" sql-type="NUMBER" />
<generator class="assigned" />
</id>

<version name="version" type="integer"> </version>
<property name="CodDepartement" type="java.lang.String">
<column name="COD_DEPARTEMENT" scale="8" precision="0" not-null="true" sql-type="VARCHAR2" />

</property>
<property name="LiblDepartement" type="java.lang.String" >
<column name="LIBL_DEPARTEMENT" scale="50" precision="0" not-null="true" sql-type="VARCHAR2" />
</property>

</class>


dans mon main()
je récupère des objets departement je les modifie, et je voudrais savoir pour "version" comment il faut faire.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 24, 2005 1:13 pm 
Hibernate Team
Hibernate Team

Joined: Thu Dec 18, 2003 9:55 am
Posts: 1977
Location: France
je comprends pas ta question mais si tu demandes comment incrémenter la version: il n'y a rien a faire, Hibernate le fait tout seul au moment du flush.

_________________
Anthony,
Get value thanks to your skills: http://www.redhat.com/certification


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 25, 2005 4:16 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
le flush c'est bien quand on a chargé un objet qu'on fait des manip dessus et qu'on fait un commit ensuite, non?


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 25, 2005 4:28 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
julientarrago wrote:
le flush c'est bien quand on a chargé un objet qu'on fait des manip dessus et qu'on fait un commit ensuite, non?



Si j'ai bien compris alors pourquoi quand je fais objet.getVersion(); j'obtiens rien comme résultat ?


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 25, 2005 5:02 am 
Regular
Regular

Joined: Mon Apr 25, 2005 5:36 am
Posts: 103
julientarrago wrote:
julientarrago wrote:
le flush c'est bien quand on a chargé un objet qu'on fait des manip dessus et qu'on fait un commit ensuite, non?



Si j'ai bien compris alors pourquoi quand je fais objet.getVersion(); j'obtiens rien comme résultat ?




C bon je viens de comprendre.

Il me faut créer un objet et puis hibernate met des valeur dans la colonne version

si je manipule l'objet version sera incrémenté automatiquempent



merci


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 25, 2005 8:30 am 
Hibernate Team
Hibernate Team

Joined: Thu Dec 18, 2003 9:55 am
Posts: 1977
Location: France
tu as tout compris!

_________________
Anthony,
Get value thanks to your skills: http://www.redhat.com/certification


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 13 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.