2016-05-24 4 views
-2

Ich kann den Inhalt der Nachricht nicht sehen. Die Anwendung wird in der Methode getcontent() ausgeführt.javamail getcontent() funktioniert nicht

Hier ist der Code

 @Override 
     protected Void doInBackground(Void... params) { 

      try { 
       //create properties field 
       Properties properties = new Properties(); 

       properties.put("mail.pop3.host", "255.255.255.255"); 
       properties.put("mail.pop3.port", "110"); 
       properties.put("mail.pop3.starttls.enable", "false"); 
       Session emailSession = Session.getDefaultInstance(properties); 

       //create the POP3 store object and connect with the pop server 
       Store store = emailSession.getStore("pop3"); 

       store.connect("255.255.255.255", "[email protected]", "ok"); 

       //create the folder object and open it 
       Folder emailFolder = store.getFolder("INBOX"); 
       emailFolder.open(Folder.READ_WRITE); 

       Message[] messages = emailFolder.getMessages(); 

       for (int i = 0, n = messages.length; i < n; i++) { 

       Message message = messages[i]; 


       //here is the killer line 
        Multipart mp = (Multipart) message.getContent(); 

       } 

       emailFolder.close(false); 
       store.close();     
       } catch (NoSuchProviderException e) { 
       } catch (MessagingException e) { 
       } catch (Exception e) { 
       } 

      return null; 
     } 

Antwort

0

Testen Sie die content, bevor die Nachricht zu lesen. Sie können ein Beispiel auf diesen Link sehen: JavaMail API - Fetching Emails

+0

ich es einfach gemacht, die conten ist multipart/mixed – neilpl26

+0

Sobald Sie getestet, die Anzahl der Teile des mehrteiligen bekommen dann Teil iterieren zu finden, ist Anhang oder Teil, der zum Beispiel Nachrichteninhalt ist. Darüber hinaus können Sie [JavaMailTM API Design Specification] (http://www.oracle.com/technetwork/java/javamail-1-149769.pdf) in der Hoffnung, ich werde Ihnen helfen .. – Enjy