繁体   English   中英

NUXEO在单个文档上附加多个文件

[英]NUXEO Attach Multiple Files on Single Document

我是Nuxeo的新手。 我已经将Portal与Nuxeo 8.1 CE集成在一起,并且现在使用Java Automation Client API从Portal在Nuxeo中执行操作。 我的问题是我想在单个文档上附加多个文件。 我从http://explorer.nuxeo.com/nuxeo/site/distribution/Nuxeo%20DM-5.5/listOperations找到了它作为BlobHolder.Attach的操作

但是我找不到此操作的任何此类示例。 此操作的任何示例都会有很大帮助。

https://www.nuxeo.com/blog/qa-friday-add-extra-files-document-content-automation/

这是用于设置少量斑点的文档。 我不确定,但是您可以尝试在链式通话中设置Blob,如下例所示。

HttpAutomationClient client = new HttpAutomationClient("http://localhost:8080/nuxeo/site/automation");
Session session = client.getSession("Administrator", "Administrator");
File dummyFile = new File("/tmp/dummy");
session.newRequest("Blob.AttachOnDocument")
    .set("document", "/path/to/my/doc")
    .set("xpath", "files:files")
    .setInput(new Blobs(Arrays.asList(
            new FileBlob(dummyFile),
            new FileBlob(dummyFile),
            new FileBlob(dummyFile)
    ))).execute();

在这里,我附上了实现方法:

    String attachmentPath = null;
    if (!ioFiles.isEmpty()) {
        Session adminSession = NuxeoUtil.getNuxeoAdminSession();
        Document collectionDoc = null;
        try {
            collectionDoc = (Document) adminSession.newRequest(DocumentService.FetchDocument)
                    .set(NuxeoConstants.NUXEO_VALUE, originalCollectionId).execute();
            DocumentService rs = adminSession.getAdapter(DocumentService.class);
            DocRef docRef = new DocRef(originalCollectionId);
            attachmentPath = collectionDoc.getPath();
            if (docRef != null) {
                for (File file : ioFiles) {
                    Blob blob = new FileBlob(file);
                    rs.setBlob(docRef, blob, "files:files");
                }
            }
            NuxeoUtil.closeNuxeoSession(adminSession);
        } catch (Exception e) {
            _log.error(e);
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM