NUXEO 在单个文档上附加多个文件
NUXEO Attach Multiple Files on Single Document
我是 Nuxeo 的新手。我已经将我的门户与 Nuxeo 8.1 CE 集成,现在使用 Java 自动化客户端 API 我正在从我的门户在 Nuxeo 中执行操作。我的问题是我想在单个文档上附加多个文件。我发现它的操作是 BlobHolder.Attach 来自 http://explorer.nuxeo.com/nuxeo/site/distribution/Nuxeo%20DM-5.5/listOperations
但我无法找到此操作的任何此类示例。此操作的任何示例都会有很大帮助。
https://www.nuxeo.com/blog/qa-friday-add-extra-files-document-content-automation/
这里是设置几个 blob 文件的文档。
我不确定,但您可以尝试在链调用上设置 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);
}
}
我是 Nuxeo 的新手。我已经将我的门户与 Nuxeo 8.1 CE 集成,现在使用 Java 自动化客户端 API 我正在从我的门户在 Nuxeo 中执行操作。我的问题是我想在单个文档上附加多个文件。我发现它的操作是 BlobHolder.Attach 来自 http://explorer.nuxeo.com/nuxeo/site/distribution/Nuxeo%20DM-5.5/listOperations
但我无法找到此操作的任何此类示例。此操作的任何示例都会有很大帮助。
https://www.nuxeo.com/blog/qa-friday-add-extra-files-document-content-automation/
这里是设置几个 blob 文件的文档。 我不确定,但您可以尝试在链调用上设置 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);
}
}