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 :

Javamail : pop3 laisse les mails sur le serveur


Sujet :

API standards et tierces Java

  1. #1
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 151
    Points : 85
    Points
    85
    Par défaut Javamail : pop3 laisse les mails sur le serveur
    Bonjour,

    je travail sur une application Java qui alimente une bdd à partir de mails reçu sur une boite prévue à cette usage.

    J'utilise le protocole pop3, qui est censé supprimer les messages du serveur après récupération, mais il n'en ai rien
    Je prend pourtant soin de faire un folder.close(true);
    C'est embattant d'une part car que je ne sais pas comment différencier les nouveaux messages des anciens de façon certaine, et que d'autre part ça va risque d'alourdir le traitement au fil du temps.

    Voici mon code (simplifié):

    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
     
     Properties pop3Props = new Properties();
     pop3Props.setProperty("mail.pop3.host",popServerAdress);
     pop3Props.setProperty("mail.pop3.port",popServerPort);
     pop3Props.setProperty("mail.pop3.ssl.enable","true");
     
     Session session = Session.getDefaultInstance(pop3Props);
     Store store = session.getStore("pop3");
    store.connect(userLogin,userPassword);
     
     Folder folder = store.getDefaultFolder();
     folder = folder.getFolder("INBOX"); //seul choix possible en POP3        
     folder.open(Folder.READ_WRITE); 
     
    Message[] msgTab = folder.getMessages();
     
    /* Traitement
    [...]
    */ 
     
    folder.close(true);
    store.close();
    Quel est le problème ?

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 075
    Points : 7 981
    Points
    7 981
    Par défaut
    Tu as essayer de mettre le Flag DELETED pour les messages ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    message.setFlag(Flags.Flag.DELETED,true);
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Points : 773
    Points
    773
    Par défaut
    ça dépend du serveur. par exemple dans gmail, ils ne sont pas supprimés automatiquement, et il faut changer ce comportement dans les paramètres du compte

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 43
    Points : 29
    Points
    29
    Par défaut
    Comme le dit wax78, il est nécessaire de mettre le Flag DELETED sur le message que tu as déjà traité, sinon le close(true) ne sert à rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    message.setFlag(Flags.Flag.DELETED,true);

Discussions similaires

  1. Conserver les mails sur le serveur ? (dans Th 3.0.4)
    Par giov1 dans le forum Thunderbird
    Réponses: 2
    Dernier message: 11/04/2011, 11h23
  2. rediriger les sites sur son serveur
    Par largowinch dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 06/12/2005, 18h56
  3. les cursor sur sql serveur
    Par hoummass dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 03/10/2005, 17h10
  4. Suppression de mail sur le serveur
    Par zyg dans le forum Réseau/Web
    Réponses: 2
    Dernier message: 02/03/2005, 10h17
  5. Réponses: 3
    Dernier message: 09/12/2004, 11h49

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