2011-07-25 4 views
0

これはrediffアカウントから件名と送信者アドレスを取得するためのコードです。しかしそれはそうしない。件名と送信者アドレスをダウンロードできません(rediff)

import javax.mail.*; 
import javax.mail.internet.*; 
import java.util.*; 
import javax.swing.*; 

class NewClass { 
public static void main(String args[]) { 
    Properties props = new Properties(); 
    props.put("mail.pop3.host" , "pop.rediffmail.com"); 
    props.put("mail.pop3.user" , "username"); 
    // User SSL 
    props.put("mail.pop3.socketFactory" , 110); 
    props.put("mail.pop3.socketFactory.class" , "javax.net.ssl.SSLSocketFactory"); 
    props.put("mail.pop3.port" , 110); 
    Session session = Session.getDefaultInstance(props , new Authenticator() { 
     @Override 
       protected PasswordAuthentication getPasswordAuthentication() { 
         return new PasswordAuthentication("username" , "password"); 
     } 
    }); 

    try { 
     Store store = session.getStore("pop3"); 
     store.connect("pop.rediffmail.com" , "username" , "password"); 
     Folder fldr = store.getFolder("Inbox"); 
     fldr.open(Folder.READ_WRITE); 
     Message msgs[] = fldr.getMessages(); 
     for(int i = 0 ; i < msgs.length ; i++) { 
      System.out.println(InternetAddress.toString(msgs[i].getFrom()) + "<-- FROM" + " " + msgs[i].getSubject() + "<---Subject"); 

     } 
    } catch(Exception exc) { 
     exc.printStackTrace(); 
    } 
} 

}

これは、実行時に次の例外を提供します:

javax.mail.MessagingException: Connect failed; 
nested exception is: 
    javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? 
    at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:210) 
    at javax.mail.Service.connect(Service.java:295) 
    at javax.mail.Service.connect(Service.java:176) 
    at NewClass.main(NewClass.java:25) 
    Caused by: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? 
    at sun.security.ssl.InputRecord.handleUnknownRecord(Unknown Source) 
    at sun.security.ssl.InputRecord.read(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) 
    at com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:507) 
    at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:238) 
    at com.sun.mail.pop3.Protocol.<init>(Protocol.java:107) 
    at com.sun.mail.pop3.POP3Store.getPort(POP3Store.java:261) 
    at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:206) 
    ... 3 more 

これはなぜでしょうか? rediffは他のクライアントからpop3サービスを無料で提供していますか?

答えて

2

あなたはその外観でSSLを使用しようとしています。ポート110は通常SSL接続には使用されません。


EDIT:Rediffのは、POP3をサポートして次のようになります。あなたのSSL接続を行うhttp://support.rediff.com/cgi-bin/support/printdetail.cgi?id=mail_1304.htm

ストリップ、あなたは問題ないはずです。


FURTHER EDITは:POP3はプレミアム機能であるように見えるので、それはあなたのアカウントに使用できない場合があります。http://support.rediff.com/cgi-bin/support/printdetail.cgi?id=mail_1301.htm

あなたはそれをセットアップするRediffのに連絡する必要があると思います。

+0

私はそれを検索し、Googleの結果は110と言った。間違っている可能性があります。 – saplingPro

+0

ああ!有料サービス! – saplingPro

関連する問題