我创建了一个自定义Web应用程序。通过我将一些文件上传到露天存储库。我还创建了一个PDF查看器来在UI中查看文档。
现在问题是,我只能查看PDF类型的文档,但我在存储库中上传不同类型的文档。
所以我想要我在存储库中上传的所有文档的再现副本。 我已经编写了CMIS代码来获取文档并在查看器中显示。
现在我只想要复制文件。
任何人都可以帮助我。如果可能,请提供示例源代码。
提前致谢
答案 0 :(得分:3)
本blog post讨论了Alfresco对CMIS格式的解释,并包含了显示如何检索它们的Java代码。
为了节省您的点击次数,该博文中的代码为:
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来获取实际的再现对象及其内容流。
答案 1 :(得分:1)
我希望我很清楚你的问题:
让我们承认您的露天配置得很好,当您继续分享时,您的文档(.doc&amp; Cie)会在查看器中呈现。
如果您的文档有此nodeRef:
workspace://SpacesStore/289e60a1-8b77-48da-ac53-4c2f3e81aa97
然后你可以用这个网址进行pdf渲染:
https://localhost:8080/share/proxy/alfresco/api/node/workspace/SpacesStore/289e60a1-8b77-48da-ac53-4c2f3e81aa97/content/thumbnails/pdf?c=force
这样,您始终可以在应用程序中处理pdf。
请注意,渲染可能需要一些时间并从服务器重新获取。