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

JDBC Java Discussion :

NetBeans ne m'affiche pas le contenu de ma table : problème ODBC


Sujet :

JDBC Java

  1. #441
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Là aussi j'ai un gros doute :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            String fichier          = Utilitaire.lienApplication()+"SYSTEM/serveurMail.xml";
            FileInputStream ips     = new FileInputStream(fichier);
            InputStreamReader ipsr  = new InputStreamReader(ips);
            BufferedReader br       = new BufferedReader(ipsr);
    Si c'est un fichier XML, il ne peut pas être lu de cette façon !!!!

    et puis cela est exécuté 2 fois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
            props.put("mail.from", envoyerpar);
    Tu dois avoir un regard critique sur chaque ligne de ce code.

    Au lieu de tourner autour du pot, fait un test en écrivant en clair les données dans ton code :

    Code merdouilleux :
    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
     
            //envoyer par/////////////////////////////////////////////////////////////////////
            Properties props        = new Properties();
            String mailFrom         = Utilitaire.lienApplication()+"SYSTEM/mail/001_mailFrom.txt";
            FileInputStream ips2    = new FileInputStream(mailFrom);
            InputStreamReader ipsr2 = new InputStreamReader(ips2);
            BufferedReader br2      = new BufferedReader(ipsr2);
            envoyerpar              = br2.readLine();
            props.put("mail.from", envoyerpar);
            br2.close();
            ///////////////////////////////////////////////////////////////
            String fichier          = Utilitaire.lienApplication()+"SYSTEM/serveurMail.xml";
            FileInputStream ips     = new FileInputStream(fichier);
            InputStreamReader ipsr  = new InputStreamReader(ips);
            BufferedReader br       = new BufferedReader(ipsr);
            serveur                 = br.readLine();
            props.put("mail.smtp.host", serveur);
            ///////////////////////////////////////////////////////////////////////////////////////////////////////
            //props.load(new FileInputStream(Utilitaire.lienApplication()+"PLAN/PlanDePrevention"+co+".xls"));
            String fichier1         = Utilitaire.lienApplication()+"SYSTEM/mail/002_mailTo.txt";
            Session session         = Session.getInstance(props);
            Message message         = new MimeMessage(session);
            FileInputStream ips1    = new FileInputStream(fichier1);
            InputStreamReader ipsr1 = new InputStreamReader(ips1);
            BufferedReader br1      = new BufferedReader(ipsr1);
     
     
            props.put("mail.from", envoyerpar);
     
            String chaine="";
            while ((ligne1 = br1.readLine())!= null)
                chaine+=ligne1+"\n";
            System.out.println("\n chaine(FichierExcel.java):"+chaine);
            message.setRecipients(Message.RecipientType.CC,  InternetAddress.parse(chaine, false));
            br1.close();
     
            message.setSubject("Plan de prevention "+co);
    à remplacer par :
    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
            Properties props        = new Properties();
            props.put("mail.from", "monemail@mondomain.fr");
            props.put("mail.smtp.host", "monserveur");
            Session session         = Session.getInstance(props);
            Message message         = new MimeMessage(session);
     
            String fichier1         = Utilitaire.lienApplication()+"SYSTEM/mail/002_mailTo.txt";
            FileInputStream ips1    = new FileInputStream(fichier1);
            InputStreamReader ipsr1 = new InputStreamReader(ips1);
            BufferedReader br1      = new BufferedReader(ipsr1);
     
            String chaine="";
            while ((ligne1 = br1.readLine())!= null)
                chaine+=ligne1+"\n";
            System.out.println("\n chaine(FichierExcel.java):"+chaine);
            message.setRecipients(Message.RecipientType.CC,  InternetAddress.parse(chaine, false));
            br1.close();
     
            message.setSubject("Plan de prevention "+co);

  2. #442
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    J'imagine que c'est douteux mais c'est pratiquement sûr que ca marche, j'avais fait des echo des variables et il me ressortait effectivement le bon contenu des fichiers

    J'ai remplacé l'ancien code par le tien et j'obtient cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Exception occurred during event dispatching:
    java.lang.NoClassDefFoundError: com/sun/mail/util/MailLogger
            at javax.mail.Session.initLogger(Session.java:227)
            at javax.mail.Session.<init>(Session.java:212)
            at javax.mail.Session.getInstance(Session.java:265)
            at coactivite4.FichierExcel.envoyer(FichierExcel.java:671)
            at coactivite4.Fenetre.jButtonValiderAjoutAnnexeOuiActionPerformed(Fenetre.java:8520)
            at coactivite4.Fenetre.access$5300(Fenetre.java:39)
    Code correspondant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Session session         = Session.getInstance(props);
    C'est l'unique erreur que je rencontre... par contre il y a ceci en dessous de la stack :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Caused by: java.lang.ClassNotFoundException: com.sun.mail.util.MailLogger
            at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
            ... 87 more
    Je sais pas si ca peut nous aider

  3. #443
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    j'avais fait des echo des variables et il me ressortait effectivement le bon contenu des fichiers
    Il faut tout de même essayer avec les données en dur dans le code
    car dans tes fichiers, tu peux avoir un problème d'encodage (UTF-8, etc ...) que tu ne vois pas à l'écran.

    Tu peux poster les imports de la classe FichierExcel ?

  4. #444
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    Ah d'accord, effectivement, je ne pensais pas du tout à ce genre de problème...

    voici les imports :
    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
     
    package coactivite4;
     
    import java.io.File;
    import java.sql.*;
    import javax.mail.MessagingException;
    import jxl.*;
    import jxl.write.*;
    import java.io.BufferedReader;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.Locale;
    import java.util.Properties;
    import javax.mail.Message;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeBodyPart;
    import javax.mail.internet.MimeMessage;
    import javax.mail.internet.MimeMultipart;
    import javax.swing.JRadioButton;
    import javax.swing.JTable;
    import jxl.read.biff.BiffException;

  5. #445
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Tes imports concernant le mail sont :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    import javax.mail.MessagingException;
    import javax.mail.Message;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeBodyPart;
    import javax.mail.internet.MimeMessage;
    import javax.mail.internet.MimeMultipart;
    Mets-les en commentaires et essayes avec ces imports là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    import javax.mail.*;
    import javax.mail.internet.*;
    import javax.activation.*;

  6. #446
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    J'ai effectué le changement, mais une chose m'inquiète :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    message.setRecipients(Message.RecipientType.CC,  InternetAddress.parse(chaine, false));
    Dans cette instruction, le parse apparait à présent en rouge.
    Il fait parti de la lib mail.InternetAddress.* à priori non ?
    => j'ai fait le teste inverse et il n'ai plus rouge... Les libs.* ne seraient donc pas interprétées ???

    Sinon en forcant le teste avec les libs.* :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Exception occurred during event dispatching:
    java.lang.NoClassDefFoundError: com/sun/mail/util/MailLogger
            at javax.mail.Session.initLogger(Session.java:227)
            at javax.mail.Session.<init>(Session.java:212)
            at javax.mail.Session.getInstance(Session.java:265)
            at coactivite4.FichierExcel.envoyer(FichierExcel.java:676)
    Code incriminé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Properties props        = new Properties();
            props.put("mail.from", "monemail@mondomain.fr");
            props.put("mail.smtp.host", "mail.glaverbel.com");
            Session session         = Session.getInstance(props);
            Message message         = new MimeMessage(session);
    Je ne sais pas pourquoi on a un gros problème avec cette session
    => concretement, on a écarté le code crapuleux et mis de coté ce soucis de libs.

    C'est peut être une mauvaise communication des classes ou des methodes ?

  7. #447
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Ne t’embête pas avec le parse : supprime le tout simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    message.setRecipients(Message.RecipientType.CC,  InternetAddress(chaine));
    et remets les imports comme dit précédemment

    J'ai fais quelques recherches.
    A l'évidence le développeur précédent a utilisé des librairies/classes (MailLogger) qui sont dans Java EE (sur des serveurs d'application genre GlassFish)
    Ces librairies ne sont pas dispos dans Java SE que tu utilises et qui est largement suffisant pour ce que tu fais.
    Il a utilisé un bazooka pour tuer une mouche.

  8. #448
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    J'avais effectivement vu deux trois explications de notre erreur sur le net par rapport à Java EE et Java SE.
    Je n'avais pas trop compris mais avec ta vulgarisation scientifique c'est plus simple, merci !

  9. #449
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    Citation Envoyé par Népomucène Voir le message
    Ces librairies ne sont pas dispos dans Java SE que tu utilises et qui est largement suffisant pour ce que tu fais.
    Oui mais on n'arrive toujours pas à envoyer un mail avec SE
    On devrait pas utiliser EE ? (je sais même pas comment on passe de l'un à l'autre )

  10. #450
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Citation Envoyé par Spiicky Voir le message
    avec ta vulgarisation scientifique ...
    Comment ça je suis vulgaire ???

    On peut parfaitement envoyer des mails avec Java SE
    Regarde dans les librairies du projet, tu dois avoir "javamail"

  11. #451
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    Faux ! Pas de javamail mais javax.mail !!!
    Nom : Sans titre.jpg
Affichages : 92
Taille : 32,5 Ko

    Je vais de suite DL javamail pour tester !!!

  12. #452
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Javamail est le nom générique pour toutes les versions.
    C'est un package qu'on ajoute à Java SE et on n'a pas besoin de tout le Java EE

    Bon alors ça fonctionne ou pas ???

  13. #453
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    Euh ... en attendant j'ai essayé de résoudre le problème de création d'un IdAnnexe avec plein de NULL à l'ouverture de l'application...
    Il y a des erreurs un peu partout, je reviens en arrière, on fera ca plus tard

    Reverse in progress...

  14. #454
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    Fonctionnel CHEF (merci chef, vous êtes le meilleur chef, sans vous chef, et ben on aurait pas réussis chef )

    Bon, je propose de passé à cette histoire de création d'un IdAnnexe à l'ouverture puis suppression à la fermeture si pas créer d'annexe....
    => on ajoute uniquement si le user créer et c'est tout...

    Ou alors j'ai un problème d'affichage des annexes dans mon tableau annexe en cours et annexe à venir (il n'affiche simplement rien)

    Tu préfères quoi ?

  15. #455
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    on ajoute uniquement si le user créer et c'est tout
    En l'état actuel, une annexe est créée dans la base de donnée puis supprimée si la création n'est pas confirmée ?
    L'identifiant (clé primaire) de l'annexe dans la base est incrémenté automatiquement par la base ou bien il est calculé par l'application Java ?

  16. #456
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    Ben c'est une très mauvaise mayonnaise en fait...

    A l'ouverture, on créer une annexe vide
    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
        public int recupererIdAnnexeCree() {
            try {
                int result = 0;
                matricule = System.getProperty("user.name");
     
                Connexion connexion = new Connexion();
                ResultSet resultats = connexion.getResultSet("" +
                    "SELECT IdAnnexe " +
                    "FROM Annexe;");
                while(resultats.next()){
                    result = resultats.getInt(1);
                }
                resultats.close();
     
                resultats = connexion.getResultSet("" +
                    "SELECT IdZone " +
                    "FROM Zone");
                while(resultats.next()){
                    idZone = resultats.getInt(1);
                }
                idAnnexe = result+1;
                resultats.close();
     
                connexion.execSql("" +
                    "INSERT INTO Annexe (IdAnnexe, Matricule, IdZone, Upload) " +
                    "VALUES("+idAnnexe+", '"+matricule+"', "+idZone+", False);");
                connexion.closeConn();
     
                return idAnnexe;
            } catch (Exception e) {
                e.printStackTrace();
                return 0;
            }
        }
    Si on créer une annexe il l'a UPLOAD :
    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
    try {
                    Fenetre a = new Fenetre();
                    Annexe p = new Annexe();
                    if(a.jTextAreaNatureIntervention!=null){
                        Connexion connexion = new Connexion();
                        String sql = "" +
                                "UPDATE Annexe " +
                                "SET NatureIntervention = '"+annexe.getNatureIntervention().replace("'", "''")+"'" +
                                ", DateCreation         = '"+Utilitaire.dateToDB(annexe.getDateCreation())+"'" +
                                ", DateDeb              = '"+Utilitaire.dateToDB(annexe.getDateDeb())+"'" +
                                ", DateFin              = '"+Utilitaire.dateToDB(annexe.getDateFin())+"'" +
                                ", Effectif             = "+annexe.getEffectif()+"" +
                                ", Upload               = "+annexe.getUpload()+"" +
                                ", Matricule            = '"+annexe.getMatricule()+"'" +
                                ", IdZone               = "+annexe.getIdZone()+" " +
                                "WHERE IdAnnexe         = "+annexe.getIdAnnexe()+";";
                        connexion.execSql(sql);
                        connexion.closeConn();
                        FichierExcel excel1 = new FichierExcel(jTextFieldNumAnnexe.getText());
                        try {
                            log.UpdateLog("insertion table annexe!");
                        } catch (FileNotFoundException ex) {
                            Logger.getLogger(Fenetre.class.getName()).log(Level.SEVERE, null, ex);
                        } catch (IOException ex) {
                            Logger.getLogger(Fenetre.class.getName()).log(Level.SEVERE, null, ex);
                        }
                    } else{
                        log.UpdateLog("pas de nature d'intervention");
                        try {
                            log.UpdateLog("pas de nature d'interventione!");
                        } catch (FileNotFoundException ex) {
                            Logger.getLogger(Fenetre.class.getName()).log(Level.SEVERE, null, ex);
                        } catch (IOException ex) {
                            Logger.getLogger(Fenetre.class.getName()).log(Level.SEVERE, null, ex);
                        }
                   }
                } catch(Exception e) {
                    e.printStackTrace();
                    log.UpdateLog("excel non envoyer car Etat vide");
                    System.out.println("Fenetre : Erreur update Annexe! "+e.getMessage());
                    Annexe.deleteAnnexeEnCours(Integer.parseInt(jTextFieldNumAnnexe.getText()));
                    log.UpdateLog("supprimer l'annexe vide dans la base");
                }
    Et enfin, on l'a supprime si on l'utilise pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        public static void deleteAnnexeEnCours(int numAnnexe) {
            try {
                Connexion connexion = new Connexion();
                connexion.execSql("" +
                        "DELETE FROM Annexe " +
                        "WHERE IdAnnexe = "+numAnnexe+";");
                connexion.closeConn();
            } catch(Exception e) {
                e.printStackTrace();
            }
        }
    Ce qui est problématique et qui arrive souvent dans mes testes, c'est que l'application est forcée d'être arrêté et du coup à la réouverture j'ai des grosse erreur pour l'affichage de l'Upload par exemple (tableau résumé en gros). Et je pense que c'est pas tout parce qu'actuellement, mes tableaux Annexe en cours et Annexe à venir sont vide...

  17. #457
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Oui, c'est bien le problème : si, au milieu de la création, l'utilisateur décide de rentrer chez lui, on se retrouve avec des fiches vides dans la base. Ce n'est pas propre.

    Quel est le rôle exact de la table Zone ?

  18. #458
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Par ailleurs, il faudra modifier le code des requêtes car le boulot de calculer l'identifiant est fait par Java qui n'est pas le mieux placé pour le faire.

  19. #459
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 340
    Points : 31
    Points
    31
    Par défaut
    La table Zone regroupe apparemment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IdZone, NomZone, IdInstallation, X1, X2, Y1, Y2
    C'est pour reconnaitre le lieu d'intervention du sous-traitant.
    Aujourd'hui, les cordonnées ne sont pas utilisé mais a terme, il faudrait faire un mapage des zone sur une carte...

    bon ap !

  20. #460
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    En l'état actuel, l'application va créer un identifiant pour la zone lors de la création de l'annexe.
    Cela suppose qu'à chaque annexe on a une nouvelle zone.
    Si c'est le cas il y a une erreur de conception de la base de données : les tables annexes et zones devraient alors n'en faire qu'une.

    Par contre si la même zone peut être utilisée par différentes annexes
    alors on doit faire une liste déroulante dans l'écran de création d'annexe pour lui attribuer la zone.

    Il faut savoir quelle réponse est la bonne.

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

Discussions similaires

  1. ListView qui change de taille mais n'affiche pas le contenu d'une ObservableCollection
    Par Atellane dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 14/08/2014, 10h46
  2. DataGrid n'affiche pas le contenu de certaines colonnes d'un Datatable
    Par alucia dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 20/09/2013, 13h39
  3. .load qui n'affiche pas le contenu de la page
    Par tonydu91 dans le forum jQuery
    Réponses: 4
    Dernier message: 06/04/2013, 23h58
  4. [SimpleXML] Problème avec simpleXML : il n'affiche pas le contenu de mon élément
    Par ploxien dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 05/05/2007, 19h43
  5. GUI Java par netbeans - ne s'affiche pas
    Par G_angel dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 31/01/2007, 11h38

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