Спасибо всем ... Поскольку я новичок в satckoverflow ... Я не могу найти точный способ добавить соответствующие комментарии ....
Здесь я не пытаюсь отправлять почту через gmailсервер ... я просто пытаюсь отправить какой-то пользователь Gmail.с помощью этого кода я могу отправлять письма любому сотруднику организации ... но не людям вне организации.
любыми способами ... Я нашел решение своей проблемы с предложением "Пророчество ждет"... Я изменил свой код, как показано ниже:
package com.trx;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.Address;
import javax.mail.Authenticator;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class MultiMimes {
public static void main(String[] args) throws Exception{
Properties props = System.getProperties();
props.setProperty("mail.smtp.host", "mymailserver");
props.put("mail.smtp.port", "25");
props.put("mail.smtp.auth", "true");
props.put("mail.debug", "true");
Authenticator auth = new SMTPAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
Message message = new MimeMessage(session);
try{
message.setSubject("I am a multipart text/html email" );
Address toAddress =new InternetAddress("my gmail address");
Address fromAddress =new InternetAddress("my organization address");
message.setFrom(fromAddress);
message.addRecipient(Message.RecipientType.TO, toAddress);
MimeMultipart multipart1 = new MimeMultipart("alternative");
// Create text message part
MimeBodyPart textPart = new MimeBodyPart();
textPart.setContent("am text", "text/plain");
textPart.setHeader("MIME-Version" , "1.0" );
textPart.setHeader("Content-Type" , textPart.getContentType() );
System.out.println("textPart.getContentType():"+textPart.getContentType());
// Create html part
MimeBodyPart htmlPart = new MimeBodyPart();
htmlPart.setContent("<html><body><b>am html</b></body></html>", "text/html");
htmlPart.setHeader("MIME-Version" , "1.0" );
htmlPart.setHeader("Content-Type" , "text/html" );
System.out.println("htmlPart.getContentType():"+htmlPart.getContentType());
//adding multiparts to message
multipart1.addBodyPart(textPart);
multipart1.addBodyPart(htmlPart);
message.setContent(multipart1);
//sending message
Transport.send(message);
System.out.println("mail sent successfully");
}catch(AddressException ae){
System.out.println("address exception");
ae.printStackTrace();
}
catch(MessagingException e){
System.out.println("message exception");
e.printStackTrace();
}
}
}
и использовал тот же класс SMTPAuthenticator, который он предоставил ... Теперь я могу отправлять письма с почтового сервера моей организации на любой почтовый идентификатор ...Еще раз спасибо.