【Java开源代码栏目提醒】:网学会员在Java开源代码频道为大家收集整理了TransportListenerTest.java提供大家参考,希望对大家有所帮助!
import java.io.*;
import java.net.*;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.mail.event.*;
public class TransportListenerTest implements TransportListener
{
public static void main(String[] args)
{
try
{
Properties props = System.getProperties();
Address[] addresses;
Transport transport;
props.put("mail.smtp.host", "mail.coolbook.com");
Session session = Session.getDefaultInstance(props, null);
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("
mis3710167@qq.com"));
addresses = InternetAddress.parse("3710167@qq.com,3710167@qq.com", false);
msg.setRecipients(Message.RecipientType.TO,addresses);
msg.setSubject("Hello");
msg.setText("Hello Tester, How are you?");
msg.setSentDate(new Date());
msg.setHeader("X-Mailer", "SendTest");
transport = session.getTransport("smtp");
transport.addTransportListener(new TransportListenerTest());
System.out.println("Sending message.");
transport.connect();
transport.sendMessage(msg,addresses);
transport.close();
System.out.println("Message was sent successfully.");
}
catch (Exception e)
{
e.printStackTrace();
}
}
public void messageDelivered(TransportEvent e)
{
System.out.println("Delivered message to:");
printAddresses(e);
}
public void messageNotDelivered(TransportEvent e)
{
System.out.println("Failed to deliver message to:");
printAddresses(e);
}
public void messagePartiallyDelivered(TransportEvent e)
{
System.out.println("Partially delivered message to:");
printAddresses(e);
}
public void printAddresses(TransportEvent e)
{
Address[] addresses;
int i,max;
addresses = e.getValidSentAddresses();
if(addresses != null) max = addresses.length;
else max = 0;
for(i=0;i<max;i++)
{
System.out.println("\t"+addresses[i]+" -valid sent");
}
addresses = e.getValidUnsentAddresses();
if(addresses != null) max = addresses.length;
else max = 0;
for(i=0;i<max;i++)
{
System.out.println("\t"+addresses[i]+" -valid unsent");
}
addresses = e.getInvalidAddresses();
if(addresses != null) max = addresses.length;
else max = 0;
for(i=0;i<max;i++)
{
System.out.println("\t"+addresses[i]+" -invalid");
}
}
}