2016-07-22 54 views
-1

嗨,大家好我初學alfresco.I已經做了很多服務,比如創建文件夾,子文件夾,上傳文件,下載文件,使用CMIS創建權限來創建到另一個文件夾鏈接,一個文件夾。 但我無法使用cmis創建一個文件夾到另一個文件夾的鏈接。有人告訴我使用cmis不可能。 不知何故,我得到這個鏈接http://basanagowdapatil.blogspot.in/2011/01/code-for-creating-links-in-alfresco.html。 但這段代碼不在cmis中。 我從來沒有做過這種編程。 有人可以建議我如何在maven中做這個程序。 什麼依賴或罐子我要補充。 這是更好的,如果有人能解釋我一步一步(在意義上如何給予認證)。 在此先感謝在露天倉庫瞭如何使用Java API的

回答

0

我有我的答案,然後我們可以做同樣的使用CMIS API。

import java.util.HashMap; 
import java.util.Map; 

import org.apache.chemistry.opencmis.client.api.Folder; 
import org.apache.chemistry.opencmis.client.api.Session; 
import org.apache.chemistry.opencmis.commons.PropertyIds; 
import org.apache.chemistry.opencmis.commons.enums.BaseTypeId; 
import org.apache.log4j.BasicConfigurator; 
import org.apache.log4j.Logger; 

import com.bizruntime.alfresco.session.CreateSession; 
import com.bizruntime.alfresco.util.Config; 

public class CreateLink { 
    static Logger log = Logger.getLogger(CreateLink.class); 
    public static void getLink() { 
     // creating Session 
     Session cmiSession = new CreateSession().getSession(); 
     log.debug("Session Created..."); 
     Map<String,Object> properties = new HashMap<>(); 
     properties.put(PropertyIds.BASE_TYPE_ID, BaseTypeId.CMIS_ITEM.value()); 

     // Define a name and description for the link 
     properties.put(PropertyIds.NAME, Config.getConfig().getProperty("nameOfLink")); 
     properties.put("cmis:description", Config.getConfig().getProperty("linkDescription")); 
     properties.put(PropertyIds.OBJECT_TYPE_ID, "I:app:filelink"); 

     // Define the destination node reference 
     properties.put("cm:destination", Config.getConfig().getProperty("destination-nodRef")); 

     // Choose the folder where the link to be create 
     Folder rootFoler = cmiSession.getRootFolder(); 
     Folder targerFolder = (Folder) cmiSession.getObjectByPath(rootFoler.getPath() + Config.getConfig().getProperty("targetFolder")); 
     cmiSession.createItem(properties, targerFolder); 
     log.info("Link Created Successfully...."); 
    } 

    public static void main(String[] args) { 
     BasicConfigurator.configure(); 
     CreateLink cl = new CreateLink(); 
     cl.getLink(); 
    } 
} 

import java.util.HashMap; 
import java.util.Map; 

import org.apache.chemistry.opencmis.client.api.Folder; 
import org.apache.chemistry.opencmis.client.api.Session; 
import org.apache.chemistry.opencmis.commons.PropertyIds; 
import org.apache.chemistry.opencmis.commons.enums.BaseTypeId; 
import org.apache.log4j.BasicConfigurator; 
import org.apache.log4j.Logger; 

import com.bizruntime.alfresco.session.CreateSession; 
import com.bizruntime.alfresco.util.Config; 

public class CreateLink { 
    static Logger log = Logger.getLogger(CreateLink.class); 

    public static void getLink() { 
     // creating Session 
     Session cmiSession = new CreateSession().getSession(); 
     log.debug("Session Created..."); 
     Map<String,Object> properties = new HashMap<>(); 
     properties.put(PropertyIds.BASE_TYPE_ID, BaseTypeId.CMIS_ITEM.value()); 

     // Define a name and description for the link 
     properties.put(PropertyIds.NAME, Config.getConfig().getProperty("nameOfLink")); 
     properties.put("cmis:description", Config.getConfig().getProperty("linkDescription")); 
     properties.put(PropertyIds.OBJECT_TYPE_ID, "I:app:filelink"); 

     // Define the destination node reference 
     properties.put("cm:destination", Config.getConfig().getProperty("destination-nodRef")); 

     // Choose the folder where the link to be create 
     Folder rootFoler = cmiSession.getRootFolder(); 
     Folder targerFolder = (Folder) cmiSession.getObjectByPath(rootFoler.getPath() + Config.getConfig().getProperty("targetFolder")); 
     cmiSession.createItem(properties, targerFolder); 
     log.info("Link Created Successfully...."); 
    } 

    public static void main(String[] args) { 
     BasicConfigurator.configure(); 
     CreateLink cl = new CreateLink(); 
     cl.getLink();    
    } 
} 

創建文件夾鏈接代碼