Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Date;
- import java.util.Properties;
- import javax.activation.DataHandler;
- import javax.activation.DataSource;
- import javax.activation.FileDataSource;
- import javax.mail.Authenticator;
- import javax.mail.BodyPart;
- import javax.mail.Message;
- import javax.mail.Multipart;
- import javax.mail.PasswordAuthentication;
- import javax.mail.Session;
- import javax.mail.Transport;
- import javax.mail.internet.InternetAddress;
- import javax.mail.internet.MimeBodyPart;
- import javax.mail.internet.MimeMessage;
- import javax.mail.internet.MimeMultipart;
- /** *Klasse zum versenden einer eMail mit/ohne Attachment * @author Chris */
- public class SendMail {
- private String server;
- private String user;
- private String password;
- private String port;
- /** * Konstruktor */
- public SendMail() {
- port = "25";
- }
- /** * * @return Port des Mailservers (Standard 25) */
- public String getPort() {
- return port;
- }
- /** * * @param port Port des Mailservers (Standard 25) */
- public void setPort(String port) {
- this.port = port;
- }
- /** * * @return Passwort für den Mailserver */
- public String getPassword() {
- return password;
- }
- /** * * @param password Passwort für den Mailserver */
- public void setPassword(String password) {
- this.password = password;
- }
- /** * * @return Username für den Mailserver */
- public String getUser() {
- return user;
- }
- /** * * @param user Username für den Mailserver */
- public void setUser(String user) {
- this.user = user;
- }
- /** * * @return Mailserver */
- public String getServer() {
- return server;
- }
- /** * * @param server Mailserver */
- public void setServer(String server) {
- this.server = server;
- }
- /**
- * * * @param sVon eMailadresse des Absenders * @param sAn eMailadresse des
- * Empfängers * @param sSubject Subjekt (Betreffzeile) * @param sBody Text
- * der Mail * @return
- */
- public boolean sendeMail(String sVon, String sAn, String sSubject,
- String sBody) {
- return sendeMail(sVon, sAn, sSubject, sBody, "");
- }
- /**
- * * * @param sVon eMailadresse des Absenders * @param sAn eMailadresse des
- * Empfängers * @param sSubject Subjekt (Betreffzeile) * @param sBody Text
- * der Mail * @param sFilename Attachment (Pfad zur Datei) * @return
- */
- public boolean sendeMail(String sVon, String sAn, String sSubject,
- String sBody, String sFilename) {
- try {
- String file = "";
- Properties prop = System.getProperties();
- if (server == null || server.isEmpty()) {
- return false;
- }
- prop.put("mail.transport.protocol", "smtp");
- prop.put("mail.smtp.auth", "true");
- prop.put("mail.smtp.host", server);
- prop.put("mail.smtp.port", port);
- prop.put("mail.user", user);
- prop.put("mail.password", password);
- Authenticator auth = null;
- auth = new Authenticator() {
- @Override
- public PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(user, password);
- }
- };
- javax.mail.Session ses1 = Session.getInstance(prop, auth);
- MimeMessage msg = new MimeMessage(ses1);
- msg.setFrom(new InternetAddress(sVon));
- msg.addRecipient(Message.RecipientType.TO, new InternetAddress(sAn));
- msg.setSubject(sSubject);
- Multipart multipart = new MimeMultipart();
- BodyPart messageBodyPart = new MimeBodyPart();
- messageBodyPart.setText(sBody);
- multipart.addBodyPart(messageBodyPart);
- file = sFilename.substring(sFilename.lastIndexOf("/") + 1);
- if (file.equalsIgnoreCase("")) {
- file = sFilename.substring(sFilename.lastIndexOf("\\") + 1);
- }
- if (!file.equalsIgnoreCase("")) {
- messageBodyPart = new MimeBodyPart();
- DataSource source = new FileDataSource(sFilename);
- messageBodyPart.setDataHandler(new DataHandler(source));
- messageBodyPart.setFileName(file);
- multipart.addBodyPart(messageBodyPart);
- }
- msg.setContent(multipart);
- msg.setSentDate(new Date());
- Transport.send(msg);
- } catch (Exception e) {
- System.out.print(e.fillInStackTrace());
- return false;
- }
- return true;
- }
- }
Add Comment
Please, Sign In to add comment