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

Langage Java Discussion :

Exception java.util.Date cannot be cast to java.sql.Date


Sujet :

Langage Java

  1. #1
    Membre confirm�
    Inscrit en
    Janvier 2008
    Messages
    101
    D�tails du profil
    Informations personnelles :
    �ge : 39

    Informations forums :
    Inscription : Janvier 2008
    Messages : 101
    Par d�faut Exception java.util.Date cannot be cast to java.sql.Date
    Bonjours � tous,
    alors voila, je travaille sur une application et je viens d'avoir l'errer sivante en essayant d'enregistrer un objet dans la base de donn�e.
    Voi�i des portion de mon code:

    Une classe Site
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public class Site implements Serializable{
    ....
    private Date dateCreated;
    ....
    public Date getDateCreated() {
    		return dateCreated;
    	}
     
    	public void setDateCreated(Date dateCreated) {
    		this.dateCreated = dateCreated;
    	}
    La classe SiteDAO
    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
    public Site create(Site site)
        {
        	Connection c = null;
            PreparedStatement ps = null;
        	try{
        		c = ConnectionHelper.getConnection();
        		ps = c.prepareStatement("INSERT INTO sites (NOM, VPN_IP, ADRESSE_RUE, ADRESSE_CODE_POSTALE, VILLE, TELEPHONE, DEBIT, IP, DATE_CREATED, FLAG, DATE_DOWN) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
        		ps.setString(1, site.getNom());
        		ps.setString(2, site.getVpnIp());
        		if(site.getAdresse()!=null)
        		{
        			ps.setString(3, site.getAdresse().getAdresse());
            		ps.setInt(4, site.getAdresse().getCodePostale());
            		ps.setString(5, site.getAdresse().getVille());
        		}else
        		{
        			ps.setNull(3, Types.VARCHAR);
        			ps.setNull(4, Types.VARCHAR);
        			ps.setNull(5, Types.VARCHAR);
        		}
     
        		ps.setString(6, site.getTel());
        		ps.setString(7, site.getDebit());
        		ps.setString(8, site.getIp());
        		ps.setDate(9, (Date)site.getDateCreated());
        		ps.setBoolean(10, site.getFlag());
        		ps.setDate(11, (Date) site.getDateDown());
        		ps.execute();
        		ps.close();
     
     
     
        	}
        	catch (Exception e) {
    			e.printStackTrace();
    			throw new DAOException(e);
    		}
    quand je lance un test, j'ai une exception au niveau de la ligne de code :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    ps.setDate(9, site.getDateCreated());
    qui dit que : java.util.Date cannot be cast to java.sql.Date.

    Mer�i pour vos r�ponse.

  2. #2
    Membre �m�rite Avatar de zorm
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    584
    D�tails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 584
    Par d�faut
    Bonjour,

    Je pense qu'un simple changement au niveau des imports est suffisant dans ta classe Site il faut que tu remplaces le par

  3. #3
    Membre confirm�
    Inscrit en
    Janvier 2008
    Messages
    101
    D�tails du profil
    Informations personnelles :
    �ge : 39

    Informations forums :
    Inscription : Janvier 2008
    Messages : 101
    Par d�faut
    j'ai bien essayer �a mais �a ne marche pas, car quand je cr�e une instance de site, je veut garder la date de cr�ation, voi�i comment j'impl�mente mon constructeur:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    public Site() {
    		this.dateCreated= new Date();
    	}
    Or quand je change dateCreated � java.sql.Date, j'ai une erreur qui dit que je doit indiquer un casting vers java.util.Date.
    La je met
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    public Site() {
    		this.dateCreated= (java.sql.Date) new Date();
    	}
    Mais lors de l'execution, j'ai la meme erreur!!

  4. #4
    Membre confirm�
    Inscrit en
    Janvier 2008
    Messages
    101
    D�tails du profil
    Informations personnelles :
    �ge : 39

    Informations forums :
    Inscription : Janvier 2008
    Messages : 101
    Par d�faut
    Bon voila j'ai r�sole le probl�me. Voi�i le code si �a vous interesse:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    public Site() {
    		java.util.Date date= new java.util.Date();
    		this.dateCreated= new Date(date.getTime());
    	}
    Au fait c'est assez simple!!

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 7
    Dernier message: 20/01/2015, 10h33
  2. Erreur "java.util.ArrayList cannot be cast"
    Par smile_88 dans le forum Hibernate
    R�ponses: 2
    Dernier message: 17/10/2012, 00h11
  3. R�ponses: 2
    Dernier message: 24/05/2011, 10h16
  4. cannot be cast to java.util.Map
    Par Mister Q dans le forum JSF
    R�ponses: 0
    Dernier message: 03/02/2011, 17h18
  5. R�ponses: 1
    Dernier message: 26/04/2010, 11h03

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