2016-08-02 32 views
0

我已經創建了資源庫文件...如何獲得文檔的Acls?

。我將在下面的ACL像...

public void setPermissionsToDocument(Session session, List<String> users, String documentPath) { 
    List<String> permissions = new LinkedList<String>(); 
    List<Ace> addAces = new LinkedList<Ace>(); 
    // permissions.add(BasicPermissions.WRITE); 
    permissions.add(PermissionService.TAKE_OWNERSHIP); 
    for (String user : users) { 
     Ace addAce = session.getObjectFactory().createAce(user, permissions); 
     addAces.add(addAce); 
    } 
    Document document = (Document) session.getObjectByPath(documentPath); 
    // CmisObjectNotFoundException(String message) 
    // document.addAcl(addAces, AclPropagation.REPOSITORYDETERMINED); 
    document.setAcl(addAces); 
    System.out.println("permissions are setted"); 

} 

現在我沒有收到類似如下所示paricular文件的訪問控制列表。並返回null。

Document document = dmsService.getDocument(session, "/Manohar/Manohar1/Manohar2/app-logo-48.png"); 
    document.getAcl(); 

任何機構請幫我...

+0

你看到這個https://forums.alfresco.com/forum/developer-discussions/alfresco- api/cmis-acl-problemquestion-solved-12052012-0759 ??? –

回答

2

試試這個:

System.out.println("getting ACL capabilities"); 
     AclCapabilities aclCapabilities = session.getRepositoryInfo().getAclCapabilities(); 

System.out.println("Propogation for this repository is " + aclCapabilities.getAclPropagation().toString()); 

System.out.println("permissions for this repository are: "); 
for (PermissionDefinition definition : aclCapabilities.getPermissions()) { 
System.out.println(definition.toString());     
} 

System.out.println("\npermission mappings for this repository are: "); 
Map<String, PermissionMapping> repoMapping = aclCapabilities.getPermissionMapping(); 
for (String key: repoMapping.keySet()) { 
System.out.println(key + " maps to " + repoMapping.get(key).getPermissions());     
}        
相關問題