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

JPA Java Discussion :

Comment gérer une annotation sur un TimeStamp ?


Sujet :

JPA Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de POKOU
    Homme Profil pro
    developpeur
    Inscrit en
    Décembre 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : developpeur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 121
    Par défaut Comment gérer une annotation sur un TimeStamp ?
    Bonjour
    Lors du remplissage par défaut d'un type TimeStamp dans le bean :
    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
     
    package beans;
     
    import java.io.Serializable;
    import java.util.*;
     
    import javax.persistence.*;
     
    import org.apache.tomcat.util.buf.TimeStamp;
     
    @Entity
    public class Ibanpay implements Serializable {
     
    	private int ID;
    	private String a8coibapay;
    	private String a8liibapay;
    	private int a8longiban;
    	private String a8espasepa;
    	private String a8usermain;
    	private TimeStamp a8horomain;
     
    	public Ibanpay()
    	{	
    	}
     
    	public Ibanpay(String a8coibapay, String a8liibapay, int a8longiban, String a8espasepa,	String a8usermain)
    	{
    		setA8coibapay(a8coibapay);
    		setA8liibapay(a8liibapay);
    		setA8longiban(a8longiban);
    		setA8espasepa(a8espasepa);
    		setA8usermain(a8usermain);
    		setA8horomain(new TimeStamp());
    	}
    ...
    ici les setters/getters
    ...	
    	public void setA8horomain(TimeStamp a8horomain) {
    		this.a8horomain = a8horomain;
    	}
    	@Temporal(TemporalType.TIMESTAMP)
    	public TimeStamp getA8horomain() {
    		return a8horomain;
    	}
    }
    la JVM renvoie l'erreur
    ...is org.hibernate.AnnotationException: @Temporal should be set on a java.util.Date or java.util.Calendar property: beans.Ibanpay.a8horomain
    la table mysql est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    CREATE TABLE IF NOT EXISTS `ibanpay` (
      `ID` int(11) NOT NULL AUTO_INCREMENT,
      `a8coibapay` varchar(2) NOT NULL,
      `a8liibapay` varchar(30) NOT NULL,
      `a8longiban` int(2) NOT NULL,
      `a8espasepa` varchar(3) NOT NULL,
      `a8usermain` varchar(10) NOT NULL,
      `a8horomain` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
      PRIMARY KEY (`ID`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
    pourriez vous m'aider ?

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 277
    Par défaut
    Et si tu fais ce que te propose l'exception, c'est à dire de changer le type de a8horomain de Timestamp en Date dans ta classe Java mais en laissant l'annotation Timestamp

  3. #3
    Membre confirmé Avatar de POKOU
    Homme Profil pro
    developpeur
    Inscrit en
    Décembre 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : developpeur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 121
    Par défaut
    ça passe :
    ...
    INFO: Server startup in 3120 ms
    Hibernate: insert into Ibanpay (a8coibapay, a8espasepa, a8horomain, a8liibapay, a8longiban, a8usermain) values (?, ?, ?, ?, ?, ?)
    merci

    le champ dans mySQL est rempli comme cela :
    INSERT INTO `ibanpay` (`ID`, `a8coibapay`, `a8liibapay`, `a8longiban`, `a8espasepa`, `a8usermain`, `a8horomain`) VALUES
    (2, 'FR', 'FRANCE', 27, 'OUI', 'TOTOTO', '2012-01-12 10:33:14');
    le timestamp sur un iseries est comme ça :
    A8COIBAPAY A8LIIBAPAY A8LONGIBAN A8ESPASEPA A8USERMAIN A8HOROMAIN
    ---------- ------------------------------ ---------- ---------- ---------- --------------------------
    FR France 27 OUI TOTOTO 2012-01-09 14:52:03.196646
    AD Andorre 24 OUI TOTOTO 2012-01-09 14:57:37.641284
    je continue à chercher

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 277
    Par défaut
    N'oublie pas le tag résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment gérer une session par cookie sur page asp
    Par alexsolex dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/10/2007, 23h30
  2. [VB] - Comment gérer les tabulations sur une fiche ?
    Par guiguikawa dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 06/03/2007, 14h28
  3. [VB.Net/Dataview] Comment gérer un filtre sur une colonne de type date ?
    Par silatchom dans le forum Accès aux données
    Réponses: 3
    Dernier message: 07/07/2006, 20h28
  4. comment gérer plusieurs locks sur une table?
    Par charluber dans le forum Oracle
    Réponses: 4
    Dernier message: 18/04/2006, 22h28
  5. [FPDF] Comment mettre une annotation sur un Pdf déjà existant en PHP
    Par shequet dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 13/09/2005, 12h23

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