Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.File;
- import java.io.FileOutputStream;
- import java.net.URL;
- import java.nio.channels.Channels;
- import java.nio.channels.ReadableByteChannel;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import com.atlassian.confluence.pages.PageManager
- import com.atlassian.sal.api.component.ComponentLocator
- import com.atlassian.mail.Email;
- import com.atlassian.mail.server.SMTPMailServer;
- import com.atlassian.confluence.mail.ConfluenceMailServerManager
- import javax.activation.DataHandler;
- import javax.activation.DataSource;
- import javax.activation.FileDataSource;
- import javax.mail.Multipart;
- import javax.mail.internet.MimeBodyPart;
- import javax.mail.internet.MimeMultipart;
- URL website =
- new URL("https://<confluence URL>/spaces/flyingpdf/pdfpageexport.action?pageId=<page ID number>");
- ReadableByteChannel rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream("export.pdf");
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- Path p1 = Paths.get("export.pdf");
- File attachment = p1.toFile();
- def confluenceMailServerManager = ComponentLocator.getComponent(ConfluenceMailServerManager)
- SMTPMailServer mailServer = confluenceMailServerManager.getDefaultSMTPMailServer();
- if (mailServer != null) {
- Email email = new Email("<e-mail address goes here>");
- email.setSubject("test");
- email.setBody("test");
- Multipart multipart = new MimeMultipart();
- //set attachment
- MimeBodyPart attachmentBodyPart = new MimeBodyPart();
- DataSource source = new FileDataSource(attachment);
- attachmentBodyPart.setDataHandler(new DataHandler(source));
- attachmentBodyPart.setFileName(attachment.getName());
- attachmentBodyPart.setContent("hello world", "text/plain;charset=utf-8");
- multipart.addBodyPart(attachmentBodyPart);
- email.setMultipart(multipart);
- mailServer.send(email);
- } else {
- throw new RuntimeException("no mail server!!!");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement