Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Create new Confluence attachment using Java API

Tuelle
Contributor
June 26, 2017

Hi,

I want to create a new attachment to a Confluence page inside a doPost(..) method of a HttpServlet, but I get an exception which I cannot explain. I have simplified the code (I am saving the data to a local file first; it is there and valid) in the servlet to this:

ConfluenceUser confluenceUser = AuthenticatedUserThreadLocal.get();
File file = new File("C:\\test.pdf");
Attachment attachment = new Attachment("C:\\test.pdf", "application/pdf", file.getTotalSpace(), "");
attachment.setCreator(confluenceUser);
attachment.setCreationDate(new Date());
attachment.setLastModificationDate(new Date());
this.attachmentManager.saveAttachment(attachment, null, new FileInputStream(file));
Page page = this.pageManager.getPage(6914058);
page.addAttachment(attachment);

The .saveAttachment(..) throws "IllegalArgumentException: Attachment content", but what is the problem??

 

 

1 answer

0 votes
Tuelle
Contributor
June 27, 2017

I figured out what was missing: I had to call 

attachment.setContent(page);

to link the attachment to the page. page.addAttachment does not seem to be sufficient.

Suggest an answer

Log in or Sign up to answer
TAGS
atlassian, out of office, loom, confluence, async collaboration, meeting recaps, remote teamwork, team alignment, knowledge sharing, AI-powered notes, productivity tools, workforce continuity, teamwork collection

Put your meeting notes on autopilot with Loom + Confluence

AI-powered meeting notes keep work moving even if you’re out of the office. Enjoy your well-deserved time off and return refreshed, confident you’ll catch up in no time.

Learn more
AUG Leaders

Atlassian Community Events