List of usage examples for org.apache.commons.net.smtp SimpleSMTPHeader SimpleSMTPHeader
public SimpleSMTPHeader(String from, String to, String subject)
From source file:org.apache.commons.net.examples.mail.SMTPMail.java
public static void main(String[] args) { String sender, recipient, subject, fileName, server, cc; List<String> ccList = new ArrayList<String>(); BufferedReader stdin;// w w w .j a v a2s . c o m FileReader fileReader = null; Writer writer; SimpleSMTPHeader header; SMTPClient client; if (args.length < 1) { System.err.println("Usage: SMTPMail <smtpserver>"); System.exit(1); } server = args[0]; stdin = new BufferedReader(new InputStreamReader(System.in)); try { System.out.print("From: "); System.out.flush(); sender = stdin.readLine(); System.out.print("To: "); System.out.flush(); recipient = stdin.readLine(); System.out.print("Subject: "); System.out.flush(); subject = stdin.readLine(); header = new SimpleSMTPHeader(sender, recipient, subject); while (true) { System.out.print("CC <enter one address per line, hit enter to end>: "); System.out.flush(); cc = stdin.readLine(); if (cc == null || cc.length() == 0) { break; } header.addCC(cc.trim()); ccList.add(cc.trim()); } System.out.print("Filename: "); System.out.flush(); fileName = stdin.readLine(); try { fileReader = new FileReader(fileName); } catch (FileNotFoundException e) { System.err.println("File not found. " + e.getMessage()); } client = new SMTPClient(); client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true)); client.connect(server); if (!SMTPReply.isPositiveCompletion(client.getReplyCode())) { client.disconnect(); System.err.println("SMTP server refused connection."); System.exit(1); } client.login(); client.setSender(sender); client.addRecipient(recipient); for (String recpt : ccList) { client.addRecipient(recpt); } writer = client.sendMessageData(); if (writer != null) { writer.write(header.toString()); Util.copyReader(fileReader, writer); writer.close(); client.completePendingCommand(); } if (fileReader != null) { fileReader.close(); } client.logout(); client.disconnect(); } catch (IOException e) { e.printStackTrace(); System.exit(1); } }
From source file:repl.simple.mathematica.ErrorReporter.java
/** * Sends the information to mail server. * * @param model of bug report/*from www . j a v a 2 s .c o m*/ */ private static synchronized void sendBugData(BugReportModel model) { String subject; Writer writer; SimpleSMTPHeader header; SMTPSClient client; // subject = MathREPLBundle.message("reportSubject"); try { header = new SimpleSMTPHeader(model.mailuser, model.to, subject); client = new SMTPSClient(); client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true)); client.connect(model.mailserver); if (!SMTPReply.isPositiveCompletion(client.getReplyCode())) { client.disconnect(); throw new ConnectException(MathREPLBundle.message("smtpFailure")); } client.helo("localhost"); if (client.execTLS()) { client.login(); client.setSender(model.mailuser); client.addRecipient(model.to); writer = client.sendMessageData(); if (writer != null) { writer.write(header.toString()); writer.write(model.message); writer.close(); client.completePendingCommand(); } } client.logout(); client.disconnect(); } catch (IOException e) { e.printStackTrace(); } }