2016-05-30 27 views
0

javamail APIを使用して自分のyahooアドレスからメッセージを送信すると、送信されたフォルダには移動しません。どうしたの?ここに私のソースコードがあります:javamail APIを使用してyahoo経由で送信されたメッセージは、メッセージフォルダに送信されません

public void doSendYahooMail(){ 
    from = txtFrom.getText(); 
    password= new String(txtPassword.getPassword()); 
    to = txtTo.getText(); 
    subject = txtSubject.getText(); 
    email_body = jTextArea1.getText(); 

    Properties props = new Properties(); 
    props.put("mail.smtp.starttls.enable", "true"); 
    props.put("mail.smtp.auth", "true"); 
    props.put("mail.smtp.host", "smtp.mail.yahoo.com"); 
    props.put("mail.smtp.port", "465"); 
    props.put("mail.smtp.socketFactory.port", "465"); 
    props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); 

    Session session = Session.getInstance(props, 
      new javax.mail.Authenticator(){ 
       @Override 
       protected PasswordAuthentication getPasswordAuthentication(){ 
        return new PasswordAuthentication(from, password); 
       } 
    } 
    ); 
    try { 
     Message message = new MimeMessage(session); 
     message.setFrom(new InternetAddress(from)); 
     message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to)); 
     message.setSubject(subject); 
     message.setText(email_body); 
     Transport.send(message); 

     JOptionPane.showMessageDialog(this, "Message Sent!","Sent",JOptionPane.INFORMATION_MESSAGE); 

    } catch (Exception e) { 
     JOptionPane.showMessageDialog(this, e.toString()); 
    } 
} 

私はあなたがあなたの送信されたメッセージをフォルダにコピーしたい場合は、あなたがそこに自分でそれを配置する必要があり

答えて

0

を作るためにどのような修正が必要です。例については、JavaMail sample program msgsend.javaを参照してください。

また、あなたのプログラムにこれらのcommon JavaMail mistakesを修正したいと思うでしょう。

+0

ありがとう@BillShannon、特に一般的なJavamailの間違いの場合 – David

+0

こんにちはBill、Javamailのサンプルプログラムmsgsend.javaを見てきましたが、最後の部分(EOFまでメッセージの本文を読みます)が問題を引き起こしているようです。上記のソースコードにどのように組み込むのですか? – David

+0

あなたはそれを必要としません。 collectメソッドは、メッセージの本文に含まれるデータを取得する単なる1つの方法です。メッセージは任意の方法で作成できます。メッセージが作成されて送信されたら、送信されたばかりのメッセージを保存する方法を示すコードブロックに従います。ストアに接続し、必要に応じてフォルダを作成し、フォルダにメッセージを追加します。 –

関連する問題