import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import java.io.*;
public abstract class Email
{
public static void send(String server, String to, String from
, String subject, String message, Vector attachments)
throws Exception
{
try
{
Properties props = System.getProperties();
// Eine Session erzeugen in dem die E-Mail erzeugt werden soll.
props.put("mail.smtp.host", server);
Session session = Session.getDefaultInstance(props, null);
// Nachricht erzeugen.
Message msg = new MimeMessage(session);
// Rumpf der Nachricht erzeugen.
MimeMultipart mmp = new MimeMultipart();
// Nachricht selbst erzeugen.
MimeBodyPart mbp = new MimeBodyPart();
mbp.setText(message);
mmp.addBodyPart(mbp);
// Dateien anhängen
for (Iterator i = attachments.iterator(); i.hasNext(); )
{
String filename = (String)i.next();
File f = new File(filename);
mbp = new MimeBodyPart();
FileDataSource fds = new FileDataSource(f);
mbp.setDataHandler(new DataHandler(fds));
mbp.setFileName(f.getName());
mmp.addBodyPart(mbp);
}
// Absender und Empänger festlegen
msg.setFrom(new InternetAddress(from));
msg.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(to, false));
// Betreff und Daten der Email festlegen
msg.setSubject(subject);
msg.setContent(mmp);
// Einige andere Informationen in den Kopf der EMail einfügen
msg.setHeader("X-Mailer", "SLACAD_EMailSender");
msg.setSentDate(new Date());
// Senden der Nachtricht.
Transport.send(msg);
System.out.println("Message sent OK.");
}
catch (Exception ex)
{
ex.printStackTrace();
System.out.println("String : " + ex.getMessage());
throw ex;
}
}
}