我正在开发一个与Alfresco社区4.2对接的应用程序。我在文档中读到,使用REST API访问存储库有两种方法:-REST API-CMIS REST API我的申请需要:-列出所有用户的根目录-列出目录中的项目-恢复文件-共享文档(文件夹、文件等)-访问文件的历史记录-创建和删除用户
一开始,我试图使用Apache Chemistry API,通过在互联网上找到一个例子。你可以在这个主题上看到这篇文章:尝试访问我的Alfresco存储库时出现CmisObjectNotFoundException
最后,由于没有这方面的经验,我认为最好使用Alfresco提供的API REST来进行CMIS调用。不幸的是,这个文档很少,我设法进行了一些REST调用http://localhost:8080/alfresco/api/-默认-/public/cmis/versions/1.1/tom/children?Id=86f1c760-905e-4920-98a8-a6bdd10aa,但XML流不容易理解我的问题是:-什么是最好的用途?CMIS REST Api?CMIS客户端?-在GED回购中进行CRUD的REST API的简单而清晰的定义在哪里?-如何访问用户区域节点
谢谢!
列出所有用户的根目录
使用OpenCMIS和使用用户主页文件夹路径获取结果的查询,或者使用getChildren等方法导航存储库层次结构。
列出目录中的项目
同上。
恢复文件
这将无法通过CMIS实现。相反,编写一个支持Java的web脚本。您的控制器类需要在存档存储中找到文件,然后将其复制到空间存储中以恢复它
共享文档(文件夹、文件等)
这取决于你想在这里做什么。如果您只是想调整权限,则可以通过CMIS进行。您可以使用OpenCMIS来添加或删除本地设置的权限。但是CMIS不能破坏(或重新建立)ACL继承,所以如果需要这样做,CMIS将无法工作。
同样,如果你想做的与Alfresco Share中的"快速共享"功能基本相同,CMIS可能无法帮助你(尽管我还没有尝试过)。基本上,如果您可以通过设置属性来实现,那么您可以使用CMIS来实现,否则,请为此编写自己的web脚本。
访问文件的历史记录
我认为你指的是版本历史。如果是这样,CMIS就可以了。
创建和删除用户
CMIS无法创建或删除用户或组。编写您自己的web脚本,或者查看4.2针对个人对象的REST API。