javax.mail.internet.MimeBodyPart.<init>()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(15.2k)|赞(0)|评价(0)|浏览(174)

本文整理了Java中javax.mail.internet.MimeBodyPart.<init>()方法的一些代码示例,展示了MimeBodyPart.<init>()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。MimeBodyPart.<init>()方法的具体详情如下:
包路径:javax.mail.internet.MimeBodyPart
类名称:MimeBodyPart
方法名:<init>

MimeBodyPart.<init>介绍

[英]An empty MimeBodyPart object is created. This body part maybe filled in by a client constructing a multipart message.
[中]将创建一个空的MimeBodyPart对象。这个主体部分可能由构建多部分消息的客户端填写。

代码示例

代码示例来源:origin: stackoverflow.com

  1. if (arrayInputStream != null && arrayInputStream instanceof ByteArrayInputStream) {
  2. // create the second message part with the attachment from a OutputStrean
  3. MimeBodyPart attachment= new MimeBodyPart();
  4. ByteArrayDataSource ds = new ByteArrayDataSource(arrayInputStream, "application/pdf");
  5. attachment.setDataHandler(new DataHandler(ds));
  6. attachment.setFileName("Report.pdf");
  7. mimeMultipart.addBodyPart(attachment);
  8. }

代码示例来源:origin: stackoverflow.com

  1. Multipart multipart = new MimeMultipart("mixed");
  2. for (String str : attachment_PathList) {
  3. MimeBodyPart messageBodyPart = new MimeBodyPart();
  4. DataSource source = new FileDataSource(str);
  5. messageBodyPart.setDataHandler(new DataHandler(source));
  6. messageBodyPart.setFileName(source.getName());
  7. multipart.addBodyPart(messageBodyPart);
  8. }
  9. msg.setContent(multipart);
  10. Transport.send(msg);

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * Set the given plain text and HTML text as alternatives, offering
  3. * both options to the email client. Requires multipart mode.
  4. * <p><b>NOTE:</b> Invoke {@link #addInline} <i>after</i> {@code setText};
  5. * else, mail readers might not be able to resolve inline references correctly.
  6. * @param plainText the plain text for the message
  7. * @param htmlText the HTML text for the message
  8. * @throws MessagingException in case of errors
  9. */
  10. public void setText(String plainText, String htmlText) throws MessagingException {
  11. Assert.notNull(plainText, "Plain text must not be null");
  12. Assert.notNull(htmlText, "HTML text must not be null");
  13. MimeMultipart messageBody = new MimeMultipart(MULTIPART_SUBTYPE_ALTERNATIVE);
  14. getMainPart().setContent(messageBody, CONTENT_TYPE_ALTERNATIVE);
  15. // Create the plain text part of the message.
  16. MimeBodyPart plainTextPart = new MimeBodyPart();
  17. setPlainTextToMimePart(plainTextPart, plainText);
  18. messageBody.addBodyPart(plainTextPart);
  19. // Create the HTML text part of the message.
  20. MimeBodyPart htmlTextPart = new MimeBodyPart();
  21. setHtmlTextToMimePart(htmlTextPart, htmlText);
  22. messageBody.addBodyPart(htmlTextPart);
  23. }

代码示例来源:origin: blynkkk/blynk-server

  1. @Override
  2. public void sendHtmlWithAttachment(String to, String subj, String body,
  3. QrHolder[] attachmentData) throws Exception {
  4. MimeMessage message = new MimeMessage(session);
  5. message.setFrom(from);
  6. message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
  7. message.setSubject(subj, "UTF-8");
  8. Multipart multipart = new MimeMultipart();
  9. MimeBodyPart bodyMessagePart = new MimeBodyPart();
  10. bodyMessagePart.setContent(body, TEXT_HTML_CHARSET_UTF_8);
  11. multipart.addBodyPart(bodyMessagePart);
  12. attachQRs(multipart, attachmentData);
  13. attachCSV(multipart, attachmentData);
  14. message.setContent(multipart);
  15. Transport.send(message);
  16. log.trace("Mail to {} was sent. Subj : {}, body : {}", to, subj, body);
  17. }

代码示例来源:origin: rakam-io/rakam

  1. msg.addRecipients(MimeMessage.RecipientType.TO, toEmail.stream().map(e -> {
  2. try {
  3. return new InternetAddress(e);
  4. } catch (AddressException e1) {
  5. throw Throwables.propagate(e1);
  6. Multipart mp = new MimeMultipart();
  7. MimeBodyPart htmlPart = new MimeBodyPart();
  8. htmlPart.setContent(richText.get(), "text/html");
  9. mp.addBodyPart(htmlPart);
  10. parts.forEach(part -> {
  11. try {
  12. mp.addBodyPart(part);
  13. } catch (MessagingException e) {
  14. throw Throwables.propagate(e);

代码示例来源:origin: spring-projects/spring-framework

  1. break;
  2. case MULTIPART_MODE_MIXED:
  3. MimeMultipart mixedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_MIXED);
  4. mimeMessage.setContent(mixedMultipart);
  5. setMimeMultiparts(mixedMultipart, mixedMultipart);
  6. break;
  7. case MULTIPART_MODE_RELATED:
  8. MimeMultipart relatedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_RELATED);
  9. mimeMessage.setContent(relatedMultipart);
  10. setMimeMultiparts(relatedMultipart, relatedMultipart);
  11. break;
  12. case MULTIPART_MODE_MIXED_RELATED:
  13. MimeMultipart rootMixedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_MIXED);
  14. mimeMessage.setContent(rootMixedMultipart);
  15. MimeMultipart nestedRelatedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_RELATED);
  16. MimeBodyPart relatedBodyPart = new MimeBodyPart();
  17. relatedBodyPart.setContent(nestedRelatedMultipart);
  18. rootMixedMultipart.addBodyPart(relatedBodyPart);

代码示例来源:origin: spring-projects/spring-framework

  1. /**
  2. * Add an inline element to the MimeMessage, taking the content from a
  3. * {@code javax.activation.DataSource}.
  4. * <p>Note that the InputStream returned by the DataSource implementation
  5. * needs to be a <i>fresh one on each call</i>, as JavaMail will invoke
  6. * {@code getInputStream()} multiple times.
  7. * <p><b>NOTE:</b> Invoke {@code addInline} <i>after</i> {@link #setText};
  8. * else, mail readers might not be able to resolve inline references correctly.
  9. * @param contentId the content ID to use. Will end up as "Content-ID" header
  10. * in the body part, surrounded by angle brackets: e.g. "myId" -> "&lt;myId&gt;".
  11. * Can be referenced in HTML source via src="cid:myId" expressions.
  12. * @param dataSource the {@code javax.activation.DataSource} to take
  13. * the content from, determining the InputStream and the content type
  14. * @throws MessagingException in case of errors
  15. * @see #addInline(String, java.io.File)
  16. * @see #addInline(String, org.springframework.core.io.Resource)
  17. */
  18. public void addInline(String contentId, DataSource dataSource) throws MessagingException {
  19. Assert.notNull(contentId, "Content ID must not be null");
  20. Assert.notNull(dataSource, "DataSource must not be null");
  21. MimeBodyPart mimeBodyPart = new MimeBodyPart();
  22. mimeBodyPart.setDisposition(MimeBodyPart.INLINE);
  23. // We're using setHeader here to remain compatible with JavaMail 1.2,
  24. // rather than JavaMail 1.3's setContentID.
  25. mimeBodyPart.setHeader(HEADER_CONTENT_ID, "<" + contentId + ">");
  26. mimeBodyPart.setDataHandler(new DataHandler(dataSource));
  27. getMimeMultipart().addBodyPart(mimeBodyPart);
  28. }

代码示例来源:origin: azkaban/azkaban

  1. final Message message = sender.createMessage();
  2. final InternetAddress from = new InternetAddress(this._fromAddress, false);
  3. message.setFrom(from);
  4. for (final String toAddr : this._toAddress) {
  5. message.addRecipient(Message.RecipientType.TO, new InternetAddress(
  6. toAddr, false));
  7. this._enableAttachementEmbedment ? new MimeMultipart("related")
  8. : new MimeMultipart();
  9. final BodyPart messageBodyPart = new MimeBodyPart();
  10. messageBodyPart.setContent(this._body.toString(), this._mimeType);
  11. multipart.addBodyPart(messageBodyPart);

代码示例来源:origin: stackoverflow.com

  1. final Message msg = new MimeMessage(session);
  2. msg.setFrom(new InternetAddress(senderAddress, senderDisplayName));
  3. msg.addRecipient(Message.RecipientType.TO,
  4. new InternetAddress(m.getRecipient(), m.getRecipientDisplayName()));
  5. msg.setSubject(m.getSubject());
  6. // Unformatted text version
  7. final MimeBodyPart textPart = new MimeBodyPart();
  8. textPart.setContent(m.getText(), "text/plain");
  9. // HTML version
  10. final MimeBodyPart htmlPart = new MimeBodyPart();
  11. htmlPart.setContent(m.getHtml(), "text/html");
  12. // Create the Multipart. Add BodyParts to it.
  13. final Multipart mp = new MimeMultipart("alternative");
  14. mp.addBodyPart(textPart);
  15. mp.addBodyPart(htmlPart);
  16. // Set Multipart as the message's content
  17. msg.setContent(mp);
  18. LOGGER.log(Level.FINEST, "Sending email {0}", m);
  19. Transport.send(msg);

代码示例来源:origin: stackoverflow.com

  1. private Multipart _multipart;
  2. _multipart = new MimeMultipart();
  3. public void addAttachment(String filename,String subject) throws Exception {
  4. BodyPart messageBodyPart = new MimeBodyPart();
  5. DataSource source = new FileDataSource(filename);
  6. messageBodyPart.setDataHandler(new DataHandler(source));
  7. messageBodyPart.setFileName(filename);
  8. _multipart.addBodyPart(messageBodyPart);
  9. BodyPart messageBodyPart2 = new MimeBodyPart();
  10. messageBodyPart2.setText(subject);
  11. _multipart.addBodyPart(messageBodyPart2);
  12. }
  13. message.setContent(_multipart);

代码示例来源:origin: azkaban/azkaban

  1. public EmailMessage addAttachment(final String attachmentName, final File file)
  2. throws MessagingException {
  3. this._totalAttachmentSizeSoFar += file.length();
  4. if (this._totalAttachmentSizeSoFar > _totalAttachmentMaxSizeInByte) {
  5. throw new MessageAttachmentExceededMaximumSizeException(
  6. "Adding attachment '" + attachmentName
  7. + "' will exceed the allowed maximum size of "
  8. + _totalAttachmentMaxSizeInByte);
  9. }
  10. final BodyPart attachmentPart = new MimeBodyPart();
  11. final DataSource fileDataSource = new FileDataSource(file);
  12. attachmentPart.setDataHandler(new DataHandler(fileDataSource));
  13. attachmentPart.setFileName(attachmentName);
  14. this._attachments.add(attachmentPart);
  15. return this;
  16. }

代码示例来源:origin: webx/citrus

  1. /** 渲染邮件内容。 */
  2. public void render(Part mailPart) throws MessagingException {
  3. Multipart multipart = getMultipart();
  4. if (contents.isEmpty()) {
  5. throw new MessagingException("Empty multipart");
  6. }
  7. for (MailContent content : contents) {
  8. MimeBodyPart bodyPart = new MimeBodyPart();
  9. content.render(bodyPart);
  10. multipart.addBodyPart(bodyPart);
  11. }
  12. mailPart.setContent(multipart);
  13. }

代码示例来源:origin: blynkkk/blynk-server

  1. private void attachCSV(Multipart multipart, QrHolder[] attachmentData) throws Exception {
  2. StringBuilder sb = new StringBuilder();
  3. for (QrHolder qrHolder : attachmentData) {
  4. sb.append(qrHolder.token)
  5. .append(",")
  6. .append(qrHolder.deviceId)
  7. .append(",")
  8. .append(qrHolder.dashId)
  9. .append("\n");
  10. }
  11. MimeBodyPart attachmentsPart = new MimeBodyPart();
  12. ByteArrayDataSource source = new ByteArrayDataSource(sb.toString(), "text/csv");
  13. attachmentsPart.setDataHandler(new DataHandler(source));
  14. attachmentsPart.setFileName("tokens.csv");
  15. multipart.addBodyPart(attachmentsPart);
  16. }

代码示例来源:origin: stackoverflow.com

  1. InternetAddress dests[] = new InternetAddress[emails.length];
  2. for (int i = 0; i < emails.length; i++) {
  3. dests[i] = new InternetAddress(emails[i].trim().toLowerCase());
  4. message.setSubject(subject, "UTF-8");
  5. Multipart mp = new MimeMultipart();
  6. MimeBodyPart mbp = new MimeBodyPart();
  7. mbp.setContent(body, "text/html;charset=utf-8");
  8. mp.addBodyPart(mbp);
  9. message.setContent(mp);
  10. message.setSentDate(new java.util.Date());

代码示例来源:origin: hortonworks/streamline

  1. /**
  2. * Construct a {@link Message} from the map of message field values
  3. */
  4. private Message getEmailMessage(Map<String, String> fields) throws MessagingException {
  5. Message msg = new MimeMessage(emailSession);
  6. msg.setFrom(new InternetAddress(fields.get(FIELD_FROM.key)));
  7. InternetAddress[] address = {new InternetAddress(fields.get(FIELD_TO.key))};
  8. msg.setRecipients(Message.RecipientType.TO, address);
  9. msg.setSubject(fields.get(FIELD_SUBJECT.key));
  10. msg.setSentDate(new Date());
  11. Multipart content = new MimeMultipart();
  12. MimeBodyPart mimeBodyPart = new MimeBodyPart();
  13. mimeBodyPart.setContent(fields.get(FIELD_BODY.key), fields.get(FIELD_CONTENT_TYPE.key));
  14. content.addBodyPart(mimeBodyPart);
  15. msg.setContent(content);
  16. return msg;
  17. }

代码示例来源:origin: org.springframework/spring-context-support

  1. break;
  2. case MULTIPART_MODE_MIXED:
  3. MimeMultipart mixedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_MIXED);
  4. mimeMessage.setContent(mixedMultipart);
  5. setMimeMultiparts(mixedMultipart, mixedMultipart);
  6. break;
  7. case MULTIPART_MODE_RELATED:
  8. MimeMultipart relatedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_RELATED);
  9. mimeMessage.setContent(relatedMultipart);
  10. setMimeMultiparts(relatedMultipart, relatedMultipart);
  11. break;
  12. case MULTIPART_MODE_MIXED_RELATED:
  13. MimeMultipart rootMixedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_MIXED);
  14. mimeMessage.setContent(rootMixedMultipart);
  15. MimeMultipart nestedRelatedMultipart = new MimeMultipart(MULTIPART_SUBTYPE_RELATED);
  16. MimeBodyPart relatedBodyPart = new MimeBodyPart();
  17. relatedBodyPart.setContent(nestedRelatedMultipart);
  18. rootMixedMultipart.addBodyPart(relatedBodyPart);

代码示例来源:origin: org.springframework/spring-context-support

  1. /**
  2. * Add an inline element to the MimeMessage, taking the content from a
  3. * {@code javax.activation.DataSource}.
  4. * <p>Note that the InputStream returned by the DataSource implementation
  5. * needs to be a <i>fresh one on each call</i>, as JavaMail will invoke
  6. * {@code getInputStream()} multiple times.
  7. * <p><b>NOTE:</b> Invoke {@code addInline} <i>after</i> {@link #setText};
  8. * else, mail readers might not be able to resolve inline references correctly.
  9. * @param contentId the content ID to use. Will end up as "Content-ID" header
  10. * in the body part, surrounded by angle brackets: e.g. "myId" -> "&lt;myId&gt;".
  11. * Can be referenced in HTML source via src="cid:myId" expressions.
  12. * @param dataSource the {@code javax.activation.DataSource} to take
  13. * the content from, determining the InputStream and the content type
  14. * @throws MessagingException in case of errors
  15. * @see #addInline(String, java.io.File)
  16. * @see #addInline(String, org.springframework.core.io.Resource)
  17. */
  18. public void addInline(String contentId, DataSource dataSource) throws MessagingException {
  19. Assert.notNull(contentId, "Content ID must not be null");
  20. Assert.notNull(dataSource, "DataSource must not be null");
  21. MimeBodyPart mimeBodyPart = new MimeBodyPart();
  22. mimeBodyPart.setDisposition(MimeBodyPart.INLINE);
  23. // We're using setHeader here to remain compatible with JavaMail 1.2,
  24. // rather than JavaMail 1.3's setContentID.
  25. mimeBodyPart.setHeader(HEADER_CONTENT_ID, "<" + contentId + ">");
  26. mimeBodyPart.setDataHandler(new DataHandler(dataSource));
  27. getMimeMultipart().addBodyPart(mimeBodyPart);
  28. }

代码示例来源:origin: pentaho/pentaho-kettle

  1. email_address = senderName + '<' + email_address + '>';
  2. msg.setFrom( new InternetAddress( email_address ) );
  3. } else {
  4. throw new MessagingException( BaseMessages.getString( PKG, "Mail.Error.ReplyEmailNotFilled" ) );
  5. address[i] = new InternetAddress( reply_Address_List[i] );
  6. InternetAddress[] address = new InternetAddress[destinations.length];
  7. for ( int i = 0; i < destinations.length; i++ ) {
  8. address[i] = new InternetAddress( destinations[i] );
  9. messageText.append( Const.CR );
  10. data.parts = new MimeMultipart();
  11. MimeBodyPart part1 = new MimeBodyPart(); // put the text in the

代码示例来源:origin: log4j/log4j

  1. part = new MimeBodyPart();
  2. part.setContent(s, layout.getContentType());
  3. } else {
  4. headers.setHeader("Content-Type", layout.getContentType() + "; charset=UTF-8");
  5. headers.setHeader("Content-Transfer-Encoding", "quoted-printable");
  6. part = new MimeBodyPart(headers, os.toByteArray());
  7. } catch(Exception ex) {
  8. StringBuffer sbuf = new StringBuffer(s);
  9. part = new MimeBodyPart();
  10. part.setContent(sbuf.toString(), layout.getContentType());
  11. Multipart mp = new MimeMultipart();
  12. mp.addBodyPart(part);
  13. msg.setContent(mp);

代码示例来源:origin: oblac/jodd

  1. /**
  2. * @param emailMessage {@link EmailMessage} with data.
  3. * @param attachments {@link List} of {@link EmailAttachment}s.
  4. * @return new {@link MimeBodyPart} with data from emailMessage and attachments.
  5. * @throws MessagingException if there is a failure.
  6. */
  7. private MimeBodyPart getBodyPart(final EmailMessage emailMessage, final List<EmailAttachment<? extends DataSource>> attachments) throws MessagingException {
  8. final MimeBodyPart bodyPart = new MimeBodyPart();
  9. // detect embedded attachments
  10. final List<EmailAttachment<? extends DataSource>> embeddedAttachments = filterEmbeddedAttachments(attachments, emailMessage);
  11. if (embeddedAttachments.isEmpty()) {
  12. // no embedded attachments, just add message
  13. setContent(emailMessage, bodyPart);
  14. } else {
  15. attachments.removeAll(embeddedAttachments);
  16. // embedded attachments detected, join them as related
  17. final MimeMultipart relatedMultipart = new MimeMultipart(RELATED);
  18. final MimeBodyPart messageData = new MimeBodyPart();
  19. setContent(emailMessage, messageData);
  20. relatedMultipart.addBodyPart(messageData);
  21. addAnyAttachments(embeddedAttachments, relatedMultipart);
  22. bodyPart.setContent(relatedMultipart);
  23. }
  24. return bodyPart;
  25. }

相关文章