我使用Servlets创建了一个外部Web应用程序,该应用程序连接到alfresco存储库。
我还可以将文档上传到存储库,从存储库下载文档。
现在我的要求是,我必须根据用户角色删除文档。意味着我想只允许删除文档访问网站管理员。
如果有,请提供示例代码。
先谢谢
答案 0 :(得分:5)
为了删除文档,您首先需要查看用户是否具有要删除的角色,这就是为什么答案将分为两部分
第1部分:搜索权限
在这部分中,您将看到用户是否有权删除
Session session = getSession(serverUrl, username, password); // Get the session
object = session.getObjectByPath(idObject); // get the object
if (object.getAllowableActions().getAllowableActions().contains(Action.CAN_DELETE_OBJECT)) { //// You can delete
} else { //// You can't delete
System.out.println("I can't ");
}
第2部分:删除方法
对于文档来说,删除它很简单
Session session = getSession(serverUrl, username, password);
CmisObject object = session.getObject(path);
Document suppDoc = (Document) object;
suppDoc.delete(true);
请注意,文件夹不同,但只会更改第2部分(因为删除文件夹时需要删除其子文件)
要完成此答案,您只需要将第1部分与第2部分结合起来。