I feel like I have tried almost every combination of Attachment, AttachmentManager, and related calls in order to try to get a second copy of my attachment on the same page (although with a new file name). I keep running into unhelpful error messages, or worse, none at all. Is there a sample around that can show me how to do this? I spent all afternoon on this, and it doesn't seem like it should be that difficult.
Thank you!
I finally figured out the combination to get this done. You have to do things in a very particular order.
public void copyAttachmentToSamePage(final long pageId, final String sourceAttachmentName, final String sourceAttachmentName) {
ContentEntityObject page = (ContentEntityObject)contentEntityManager.getById(pageId).getLatestVersion()
final Attachment sourceAttachment = attachmentManager.getAttachment(page, sourceAttachmentName);
Attachment targetAttachment = new Attachment();
targetAttachment.setMediaType(sourceAttachment.getMediaType());
targetAttachment.setFileSize(sourceAttachment.getFileSize());
targetAttachment.setFileName(targetAttachmentName);
targetAttachment.setTitle(targetAttachmentName);
targetPage.addAttachment(targetAttachment);
attachmentManager.saveAttachment(targetAttachment, null, attachmentManager.getAttachmentData(sourceAttachment));
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.