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

API standards et tierces Java Discussion :

mail.jar sous linux


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut mail.jar sous linux
    J'ai développé un projet J2EE dans lequel l'envoi de mail (avec l'Api javaMail) marche bien sous windows mais lorsque je déploie le même projet sous linux (red hat) l'envoi de mail ne marche plus, et j'ai pas de message d'erreur.
    Qcq peut il me dire pourquoi?
    PS: c'est la même JVM qui est installée sur les 2 OS.
    Une idée S.V.P ????
    Merci d'avance.

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Trouve d'abord le message d'erreur, il doit être quelque part. Sans ça, on va avoir du mal à t'aider.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Bonjour, as-tu bien tracé toutes les exceptions? (cela arrive assez souvent que l'on voit des catch{} vides)

    A priori il n'y a pas de raison pour que cela ne fonctionne pas sous Linux, encore moins sans exception. Peut-on voir la partie du code qui gère cet envoi de mail?

  4. #4
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    Voila le bout de code qui me sert d'envoi du mail :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     // Envoi
            ServiceMail s = ServiceFactory.getServiceMail();
            s.send(to, from, sign, subject, text);
     
            return EMPTY_MAP;
    Je sais pas si ca vous cause beaucoup .
    Je vois toujours pas de trace d'erreur.

  5. #5
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    A priori ServiceMail et ServiceFactory sont des classes appartenant à ton projet, non? ce serait plutôt là-dedans qu'il faudrait voir comment sont gérées les erreurs.

    Ta méthode dont tu cites une partie du code, est-ce qu'elle peut lancer des exceptions dans sa déclaration?

  6. #6
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    voila concretement la methode qui envoie le mail :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
     
    private static void send(
            String smtpServer,
            String encodingServer,
            InternetAddress from,
            InternetAddress[] toMails,
            InternetAddress[] ccMails,
            String subject,
            String text,
            List attachedFiles) throws MessagingException {
     
            /**
             * Encoding : Utilisation du system.getProperties. <br>
             * A modifier si passage en JavaMail-1.3
             * http://java.sun.com/products/javamail/JavaMail-1.3-changes.txt <br>
             * 3. Add mail.mime.charset property (4377731) <br>
             * ------------------------------------------- <br>
             * The "mail.mime.charset" System property (NOTE: *not* Session
             * property) names the default charset to be used by JavaMail. If not
             * set, the standard J2SE "file.encoding" System property is used. This
             * allows applications to specify a default character set for sending
             * messages that's different than the character set used for files
             * stored on the system. This is common on Japanese systems.
             */
            Properties props = System.getProperties();
            String encoding = props.getProperty("file.encoding");
            props.setProperty("file.encoding", encodingServer);
     
            try {
                // -- Attaching to default Session, or we could start a new one --
                props.put("mail.smtp.host", smtpServer);
                Session session = Session.getDefaultInstance(props, null);
     
                // Create a new message
                Message msg = new MimeMessage(session);
     
                // Set the FROM and TO fields
                msg.setFrom(from);
                msg.setRecipients(Message.RecipientType.TO, toMails);
     
                // -- We could include CC recipients too --
                if (ccMails != null) {
                    msg.setRecipients(Message.RecipientType.CC, ccMails);
                }
     
                // Set the subject
                if (subject != null) {
                    msg.setSubject(subject);
                }
                // Set some other header information
                msg.setSentDate(new Date());
     
                // create and fill the first message part
                MimeBodyPart mbp1 = new MimeBodyPart();
     
                // Text
                if ((text.toUpperCase().startsWith("<HTML"))
                    || (text.toUpperCase().startsWith("<!"))) {
                    mbp1.setContent(text, "text/html");
                } else {
                    mbp1.setText(text);
                }
                // create the Multipart and its parts to it
                Multipart mp = new MimeMultipart();
                mp.addBodyPart(mbp1);
     
                if (attachedFiles != null) {
                    for (Iterator iter = attachedFiles.iterator(); iter.hasNext();) {
                        // create the next message part
                        MimeBodyPart mbp2 = new MimeBodyPart();
                        // attach the file to the Multipart
                        String fileName = (String) iter.next();
                        FileDataSource fds = new FileDataSource(fileName);
                        mbp2.setDataHandler(new DataHandler(fds));
                        mbp2.setFileName(new java.io.File(fileName).getName());
                        mp.addBodyPart(mbp2);
                    }
                }
                // add the Multipart to the message
                msg.setContent(mp);
     
                // Send the message
                Transport.send(msg);
            } catch (MessagingException e) 
            {
     
                throw e;
            } finally {
                props.setProperty("file.encoding", encoding);
            }
    Comme j'ai dit plus hautle projet sous windows marche bien mais pas sous linux, je sais pas si ca pourrait venir d'un pb rézo.
    Merci de m'aiguiller.

  7. #7
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Comme je le pensais, la méthode send peut lancer une MessagingException. Ce qui arrive peut-être dans ton cas, mais il faut savoir ce que tu en fais de cette exception au moment où tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ServiceMail s = ServiceFactory.getServiceMail();
    s.send(to, from, sign, subject, text);
    Tu la renvois au-dessus?

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

Discussions similaires

  1. Erreurs au lancement d'un jar sous linux
    Par CinePhil dans le forum Débuter avec Java
    Réponses: 28
    Dernier message: 06/10/2014, 16h04
  2. Exécution d'un .jar sous linux
    Par hnouna2007 dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 28/07/2009, 15h46
  3. Comment installer un serveur mail (smtp), sous linux ubuntu(en ayan pour f.a.i neuf)?
    Par Invité dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 28/01/2009, 15h24
  4. erreur de jar sous linux
    Par shawty dans le forum Langage
    Réponses: 2
    Dernier message: 16/05/2007, 16h56

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