fork download
  1. public static boolean send(String from, String[] to, String[] cc, String[] bcc, String subject, String body,
  2. ArrayList<String> attachments)
  3. {
  4.  
  5. try
  6. {
  7. // Create a default MimeMessage object.
  8. MimeMessage message = new MimeMessage(getSession());
  9.  
  10. // Set From: header field of the header.
  11. message.setFrom(new InternetAddress(from));
  12.  
  13. InternetAddress[] addressTo = new InternetAddress[to.length];
  14. for (int i = 0; i < to.length; i++)
  15. {
  16. addressTo[i] = new InternetAddress(to[i]);
  17. }
  18. // Set To: header field of the header.
  19. message.addRecipients(Message.RecipientType.TO, addressTo);
  20.  
  21. if ((cc != null) && (cc.length > 0))
  22. {
  23. InternetAddress[] addressCc = new InternetAddress[cc.length];
  24. for (int i = 0; i < cc.length; i++)
  25. {
  26. addressCc[i] = new InternetAddress(cc[i]);
  27. }
  28. // Set CC: header field of the header.
  29. message.addRecipients(Message.RecipientType.CC, addressCc);
  30. }
  31.  
  32. if ((bcc != null) && (bcc.length > 0))
  33. {
  34. InternetAddress[] addressBcc = new InternetAddress[bcc.length];
  35. for (int i = 0; i < bcc.length; i++)
  36. {
  37. addressBcc[i] = new InternetAddress(bcc[i]);
  38. }
  39. // Set Bcc: header field of the header.
  40. message.addRecipients(Message.RecipientType.BCC, addressBcc);
  41. }
  42.  
  43. // Set Subject: header field
  44. message.setSubject(subject);
  45.  
  46. // Create the message part
  47. BodyPart messageBodyPart = new MimeBodyPart();
  48. // Fill the message
  49. messageBodyPart.setText(body);
  50. messageBodyPart.setContent(body, CONTENT_HTML);
  51.  
  52. Multipart multipart = new MimeMultipart();
  53. multipart.addBodyPart(messageBodyPart);
  54.  
  55. if ((attachments != null) && !attachments.isEmpty() && (attachments.size() > 0))
  56. {
  57. // Part two is attachment
  58. for (String fileName : attachments)
  59. {
  60. messageBodyPart = new MimeBodyPart();
  61. FileDataSource fds = new FileDataSource(fileName);
  62. messageBodyPart.setDataHandler(new DataHandler(fds));
  63. messageBodyPart.setFileName(fds.getName());
  64. multipart.addBodyPart(messageBodyPart);
  65. }
  66. }
  67. // Send the complete message parts
  68. message.setContent(multipart);
  69.  
  70. // Send message
  71. Transport.send(message);
  72. return true;
  73. }
  74. catch (MessagingException mex)
  75. {
  76. logger.info("send mail fails", mex);
  77. return false;
  78. }
  79. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:1: class, interface, or enum expected
public static boolean send(String from, String[] to, String[] cc, String[] bcc, String subject, String body,
              ^
Main.java:11: class, interface, or enum expected
			message.setFrom(new InternetAddress(from));
			^
Main.java:13: class, interface, or enum expected
			InternetAddress[] addressTo = new InternetAddress[to.length];
			^
Main.java:14: class, interface, or enum expected
			for (int i = 0; i < to.length; i++)
			^
Main.java:14: class, interface, or enum expected
			for (int i = 0; i < to.length; i++)
			                ^
Main.java:14: class, interface, or enum expected
			for (int i = 0; i < to.length; i++)
			                               ^
Main.java:17: class, interface, or enum expected
			}
			^
Main.java:21: class, interface, or enum expected
			if ((cc != null) && (cc.length > 0))
			^
Main.java:24: class, interface, or enum expected
				for (int i = 0; i < cc.length; i++)
				^
Main.java:24: class, interface, or enum expected
				for (int i = 0; i < cc.length; i++)
				                ^
Main.java:24: class, interface, or enum expected
				for (int i = 0; i < cc.length; i++)
				                               ^
Main.java:27: class, interface, or enum expected
				}
				^
Main.java:30: class, interface, or enum expected
			}
			^
Main.java:35: class, interface, or enum expected
				for (int i = 0; i < bcc.length; i++)
				^
Main.java:35: class, interface, or enum expected
				for (int i = 0; i < bcc.length; i++)
				                ^
Main.java:35: class, interface, or enum expected
				for (int i = 0; i < bcc.length; i++)
				                                ^
Main.java:38: class, interface, or enum expected
				}
				^
Main.java:41: class, interface, or enum expected
			}
			^
Main.java:47: class, interface, or enum expected
			BodyPart messageBodyPart = new MimeBodyPart();
			^
Main.java:49: class, interface, or enum expected
			messageBodyPart.setText(body);
			^
Main.java:50: class, interface, or enum expected
			messageBodyPart.setContent(body, CONTENT_HTML);
			^
Main.java:52: class, interface, or enum expected
			Multipart multipart = new MimeMultipart();
			^
Main.java:53: class, interface, or enum expected
			multipart.addBodyPart(messageBodyPart);
			^
Main.java:55: class, interface, or enum expected
			if ((attachments != null) && !attachments.isEmpty() && (attachments.size() > 0))
			^
Main.java:61: class, interface, or enum expected
					FileDataSource fds = new FileDataSource(fileName);
					^
Main.java:62: class, interface, or enum expected
					messageBodyPart.setDataHandler(new DataHandler(fds));
					^
Main.java:63: class, interface, or enum expected
					messageBodyPart.setFileName(fds.getName());
					^
Main.java:64: class, interface, or enum expected
					multipart.addBodyPart(messageBodyPart);
					^
Main.java:65: class, interface, or enum expected
				}
				^
Main.java:71: class, interface, or enum expected
			Transport.send(message);
			^
Main.java:72: class, interface, or enum expected
			return true;
			^
Main.java:73: class, interface, or enum expected
		}
		^
Main.java:77: class, interface, or enum expected
			return false;
			^
Main.java:78: class, interface, or enum expected
		}
		^
34 errors
stdout
Standard output is empty