2013-05-02 2 views
1

Alors que je suis en train de se connecter via la messagerie java le serveur répond inattenduauthentification Java Mail et connexion

le problème est que parfois le même programme se connecte et obtenir les mails, mais quelques fois il jette

javax.mail.AuthenticationFailedException: EOF sur la prise à com.sun.mail.pop3.POP3Store.protocolConnect (POP3Store.java:208) à javax.mail.Service.connect (Service.java:295) à javax. mail.Service.connect (Service.java:176) au newpackage.P msPOP3Client.main (PmsPOP3Client.java:44)

erreur

lorsque le serveur dit

S: +OK Hello there. 
C: CAPA 
S: +OK Here's what I can do: 

je peux connecter et récupérer tous les mails

S: EOF 

i ne peut même pas se connecter au serveur

mon code

import java.util. ; importer javax.mail.; import javax.mail.event.ConnectionEvent; import javax.mail.event.ConnectionListener; import javax.mail.internet. *;

PmsPOP3Client public class {

public static void main(String[] args) throws Exception { 
    try { 

     String host = "host"; 
     String user = "user"; 
     String password = "pass"; 
     Properties props = System.getProperties(); 
     Session session = Session.getDefaultInstance(props); 
     session.setDebug(true); 
     Store store = session.getStore("pop3"); 
     System.out.println("store.getURLName() = " + store.getURLName()); 
     store.connect(host, user, password); 
     Folder folder = store.getFolder("inbox"); 
     folder.open(Folder.READ_ONLY); 
     Message[] messages = folder.getMessages(); 
     for (int i = 0; i < messages.length; i++) { 
      System.out.println("------------ Message " + (i + 1) + " ------------"); 
      String from = InternetAddress.toString(messages[i].getFrom()); 
      if (from != null) { 
       System.out.println("From: " + from); 
      } 
      String replyTo = InternetAddress.toString(
        messages[i].getReplyTo()); 
      if (replyTo != null) { 
       System.out.println("Reply-to: " + replyTo); 
      } 
      String to = InternetAddress.toString(
        messages[i].getRecipients(Message.RecipientType.TO)); 
      if (to != null) { 
       System.out.println("To: " + to); 
      } 
      String cc = InternetAddress.toString(
        messages[i].getRecipients(Message.RecipientType.CC)); 
      if (cc != null) { 
       System.out.println("Cc: " + cc); 
      } 
      String bcc = InternetAddress.toString(
        messages[i].getRecipients(Message.RecipientType.BCC)); 
      if (bcc != null) { 
       System.out.println("Bcc: " + to); 
      } 
      String subject = messages[i].getSubject(); 
      if (subject != null) { 
       System.out.println("Subject: " + subject); 
      } 
      Date sent = messages[i].getSentDate(); 
      if (sent != null) { 
       System.out.println("Sent: " + sent); 
      } 
      Date received = messages[i].getReceivedDate(); 
      if (received != null) { 
       System.out.println("Received: " + received); 
      } 
      System.out.println(); 
     } 

     folder.close(true); 
     store.close(); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} } 
+0

suivante Quel est exactement le problème?. Veuillez définir "enexpected". –

+0

le problème est que parfois le même programme se connecte et reçoit les mails mais parfois javax.mail.AuthenticationFailedException: EOF sur le socket \t à com.sun.mail.pop3.POP3Store.protocolConnect (POP3Store.java:208) \t à javax.mail.Service.connect (Service.java:295) \t à javax.mail.Service.connect (Service.java:176) \t à newpackage.PmsPOP3Client.main (PmsPOP3Client.java:44) erreur – Complicated

Répondre

0

Vous devrez peut-être vérifier s'il y a un conflit de ports sur votre serveur. Cela peut être dû à un autre programme utilisant parfois le même port et s'affrontant avec votre propre serveur de messagerie. Vérifiez la machine du serveur pour les analyses de pare-feu/virus/etc qui peuvent bloquer le port temporairement et arrêter les clients à se connecter.

3

Vous devriez probablement essayer d'utiliser pop3s comme protocal au lieu de pop3 comme

Store store = session.getStore("pop3s"); 
Questions connexes