如何使用 CMIS 从露天存储库获取 word 文档的再现副本
How to get rendition copy of word document from alfresco repository using CMIS
我创建了一个自定义 Web 应用程序。通过它,我正在将一些文档上传到露天存储库。我还创建了一个 PDF 查看器来查看 UI.
中的文档
现在的问题是,我只能查看 PDF 类型的文档,但我正在上传存储库中的不同类型的文档。
所以我想要一份我上传到存储库中的所有文档的副本。
我已经编写了 CMIS 代码来获取文档并在查看器中显示。
现在我只想要文档的翻译副本。
谁能帮我解决这个问题。如果可能,请提供示例源代码。
提前致谢
希望我已经很好地理解了您的问题:
让我们承认您的 alfresco 配置良好,当您继续共享时,您的文档 (.doc & Cie) 会在查看器中呈现。
如果您的文档有这个 nodeRef :
workspace://SpacesStore/289e60a1-8b77-48da-ac53-4c2f3e81aa97
然后你可以用这个 url 进行 pdf 渲染:
https://localhost:8080/share/proxy/alfresco/api/node/workspace/SpacesStore/289e60a1-8b77-48da-ac53-4c2f3e81aa97/content/thumbnails/pdf?c=force
这样,您始终可以在应用程序中处理 pdf。
请注意,渲染可能需要一些时间和服务器资源。
此 blog post 讨论了 Alfresco 对 CMIS 再现的解释并包括 Java 显示如何检索它们的代码。
为了节省您的点击次数,该博客 post 中的代码是:
OperationContext context = session.createOperationContext();
context.setRenditionFilterString("cmis:thumbnail");
CmisObject doc = session.getObjectByPath("/Sites/ren/documentLibrary/Spring Surf and OpenCMIS Integration", context);
List<Rendition> renditions = doc.getRenditions();
for (Rendition rendition : renditions)
{
System.out.println("kind: " + rendition.getKind());
System.out.println("mimetype: " + rendition.getMimeType());
System.out.println("width: " + rendition.getWidth());
System.out.println("height: " + rendition.getHeight());
System.out.println("stream id: " + rendition.getStreamId());
}
哪个转储:
kind: cmis:thumbnail
mimetype: image/png
width: 100
height: 100
stream id: workspace://SpacesStore/ef7e9a9b-c847-4023-b527-17243c72ade6
您可以使用该流 ID 来获取实际的再现对象及其内容流。
我创建了一个自定义 Web 应用程序。通过它,我正在将一些文档上传到露天存储库。我还创建了一个 PDF 查看器来查看 UI.
中的文档现在的问题是,我只能查看 PDF 类型的文档,但我正在上传存储库中的不同类型的文档。
所以我想要一份我上传到存储库中的所有文档的副本。 我已经编写了 CMIS 代码来获取文档并在查看器中显示。
现在我只想要文档的翻译副本。
谁能帮我解决这个问题。如果可能,请提供示例源代码。
提前致谢
希望我已经很好地理解了您的问题:
让我们承认您的 alfresco 配置良好,当您继续共享时,您的文档 (.doc & Cie) 会在查看器中呈现。
如果您的文档有这个 nodeRef :
workspace://SpacesStore/289e60a1-8b77-48da-ac53-4c2f3e81aa97
然后你可以用这个 url 进行 pdf 渲染:
https://localhost:8080/share/proxy/alfresco/api/node/workspace/SpacesStore/289e60a1-8b77-48da-ac53-4c2f3e81aa97/content/thumbnails/pdf?c=force
这样,您始终可以在应用程序中处理 pdf。
请注意,渲染可能需要一些时间和服务器资源。
此 blog post 讨论了 Alfresco 对 CMIS 再现的解释并包括 Java 显示如何检索它们的代码。
为了节省您的点击次数,该博客 post 中的代码是:
OperationContext context = session.createOperationContext();
context.setRenditionFilterString("cmis:thumbnail");
CmisObject doc = session.getObjectByPath("/Sites/ren/documentLibrary/Spring Surf and OpenCMIS Integration", context);
List<Rendition> renditions = doc.getRenditions();
for (Rendition rendition : renditions)
{
System.out.println("kind: " + rendition.getKind());
System.out.println("mimetype: " + rendition.getMimeType());
System.out.println("width: " + rendition.getWidth());
System.out.println("height: " + rendition.getHeight());
System.out.println("stream id: " + rendition.getStreamId());
}
哪个转储:
kind: cmis:thumbnail
mimetype: image/png
width: 100
height: 100
stream id: workspace://SpacesStore/ef7e9a9b-c847-4023-b527-17243c72ade6
您可以使用该流 ID 来获取实际的再现对象及其内容流。