Пример #1
0
  /**
   * Create an empty MimeMessage object with all properties set
   *
   * @param from Sender address
   * @param replyTo Reply-to address (null to omit)
   * @param to Array of target addresses
   * @param cc Array of CC addresses - or null
   * @param subject Subject
   */
  private static MimeMessage createMessage(
      String from, String replyTo, String[] to, String[] cc, String subject)
      throws MessagingException {
    Properties p = new Properties();
    p.setProperty("mail.transport.protocol", "smtp");
    p.setProperty("mail.smtp.host", smtpHost);
    p.setProperty("mail.from", from);
    Session s = Session.getInstance(p);
    MimeMessage mm = new MimeMessage(s);

    InternetAddress[] aiaTo = new InternetAddress[to.length];
    for (int i = 0; i < aiaTo.length; ++i) {
      aiaTo[i] = new InternetAddress(to[i]);
    }
    mm.addRecipients(Message.RecipientType.TO, aiaTo);

    if (cc != null) {
      InternetAddress[] aiaCC = new InternetAddress[cc.length];
      for (int i = 0; i < aiaCC.length; ++i) {
        aiaCC[i] = new InternetAddress(cc[i]);
      }
      mm.addRecipients(Message.RecipientType.CC, aiaCC);
    }

    if (replyTo != null) {
      InternetAddress[] aiaReplyTo = new InternetAddress[1];
      aiaReplyTo[0] = new InternetAddress(replyTo);
      mm.setReplyTo(aiaReplyTo);
    }

    mm.setFrom(new InternetAddress(from));
    mm.setSubject(subject, "UTF-8");
    mm.setSentDate(new Date());

    return mm;
  }