私は、ページ(タイトル、本文)とファイルアセット(pdfと画像)をインポートするためのコンフルエンス用のプラグインを作成しています。Confluenceプラグインのインポート外部添付
私はPageManagerを使用してページを保存していますが、ページの保存/作成はかなり簡単ですが、添付ファイルを追加しています。私は方法が分かりませんそれをするために。
誰かがページオブジェクトへの添付ファイルをinputStreamまたはbyte[]
の形式で設定する方法を知っていますか? page.setAttachments()
にはAttachmentオブジェクトのリストがありますが、添付オブジェクトを作成しようとすると、inputStreamまたはbyte配列のいずれかが使用されません。
PageManager pageManager = ComponentLocator.getComponent(PageManager) as PageManager
Page page = pageManager.getPage(8290525l)
URL url = new URL("https://i.ytimg.com/vi/tntOCGkgt98/maxresdefault.jpg");
InputStream bufferIn = new BufferedInputStream(url.openStream());
すべてのヘルプは
おかげ
を編集いただければ幸いです:データをアップロードし、添付ファイルを追加するFileUploadManagerを使用し
PageManager pageManager = ComponentLocator.getComponent(PageManager) as PageManager
ArrayList<AttachmentResource> attachResources = new ArrayList<AttachmentResource>()
def page = pageManager.getPage(8290525l)
URL url = new URL("https://i.ytimg.com/vi/tntOCGkgt98/maxresdefault.jpg");
InputStream bufferIn = new BufferedInputStream(url.openStream());
DefaultSaveContext context = new DefaultSaveContext()
context.setUpdateLastModifier(true)
AttachmentManager attachmentManager = ComponentLocator.getComponent(AttachmentManager) as AttachmentManager
Attachment attachment = new Attachment("2454.png", "image/png", bufferIn.getBytes().length, "", false)
attachmentManager.saveAttachment(attachment, null, bufferIn)
page.addAttachment(attachment)
pageManager.saveContentEntity(page, context)
使用しているAPIのバージョンは何ですか? – rmlan
Confluence 5.10.4 – Alex
ハッハッハ、彼らの[Api Docs](https://docs.atlassian.com/confluence/5.10.4/com/atlassian/confluence/pages/AttachmentManager.html#saveAttachment-com.atlassian .confluence.pages.Attachment-com.atlassian.confluence.pages.Attachment-java.io.InputStream-)が存在します。 – rmlan