페이지 (제목, 본문) 및 파일 에셋 (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());
어떤 도움이
감사
을 감상 할 수있다편집 : 당신처럼
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