2012-01-19 12 views
12

पर काम करने के लिए उत्तर-सेट सेट करें, मैंने जावा में एक छोटा ईमेल भेजने वाला प्रोग्राम लिखा है, इसमें from, to और reply-to पता है, जब ग्राहक मेल का जवाब देने का प्रयास करता है, तो उसे जवाब देने में सक्षम होना चाहिए reply-to पता। वर्तमान में यह काम नहीं कर रहा है, मेरे कोड के नीचे है:जावा मेल,

// File Name SendEmail.java 

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

public class SendEmail 
{ 
    public static void main(String [] args) 
    { 

     // Recipient's email ID needs to be mentioned. 
     String to = "[email protected]"; 

     // Sender's email ID needs to be mentioned 
     String from = "[email protected]"; 

     // Assuming you are sending email from localhost 
     String host = "localhost"; 

     // Get system properties 
     Properties properties = System.getProperties(); 
    properties.put("mail.smtp.from", "[email protected]"); 

     // Setup mail server 
     properties.setProperty("mail.smtp.host", host); 

     // Get the default Session object. 
     Session session = Session.getDefaultInstance(properties); 

     try{ 
     // Create a default MimeMessage object. 
     MimeMessage message = new MimeMessage(session); 

     // Set From: header field of the header. 
     message.setFrom(new InternetAddress(from)); 

     // Set To: header field of the header. 
     message.addRecipient(Message.RecipientType.TO, 
            new InternetAddress(to)); 

     // Set Subject: header field 
     message.setSubject("This is the Subject Line!"); 

     // Now set the actual message 
     message.setText("New Message goes here"); 

     // Send message 
     Transport.send(message); 
     System.out.println("Sent message successfully...."); 
     }catch (MessagingException mex) { 
     mex.printStackTrace(); 
     } 
    } 
} 

मैं असली जीमेल खातों का इस्तेमाल किया। क्या कोई मदद कर सकता है ..?

+1

ऐसा लगता है कि आपका कोड उत्तर-पते को सेट करने का प्रयास कर रहा है। – Jolta

+0

'mail.smtp.from' सेट करने के बारे में क्या ...? –

उत्तर

22

Message.setReplyTo()?

कृपया ध्यान दें कि:

    "से"
  • के समान नहीं है spec के अनुसार
  • "के लिए उत्तर", से-पते के लिए संपत्ति है "mail.from"
  • getDefaultInstance के लिए प्रलेखन निर्दिष्ट करता है कि यह एक नया उदाहरण बनाता है यदि कोई मौजूदा डिफ़ॉल्ट उदाहरण नहीं है और गुण केवल नए उदाहरण बनाते समय उपयोग किए जाते हैं। इसके अलावा, डिफ़ॉल्ट उदाहरण एक वैश्विक मान है और फिर से उपयोग किया जाएगा, इसलिए जब तक आप अपने सभी ईमेल पर "से" -ड्रेस नहीं चाहते हैं, तो आपको नए सत्र (getInstance() का उपयोग करके
26

आज़माएं:

MimeMessage message = new MimeMessage(session); 
message.setReplyTo(new javax.mail.Address[] 
{ 
    new javax.mail.internet.InternetAddress("[email protected]") 
}); 
संबंधित मुद्दे