使用Eclipse IDE中的Alfresco All代码在一个项目中创建站点

时间:2017-01-06 07:21:28

标签: alfresco alfresco-share

如何在一个项目中使用Alfresco All中的代码创建网站。

我正在使用Eclipse IDE。

我将构建和部署war文件。

但是在部署战争之后,我希望自动创建一个站点或逻辑分区。意味着我们不需要由任何特定用户手动创建它。所有的事情都应该只通过代码完成。

任何人都可以告诉我这需要哪些文件,我需要将它放在露天的所有项目中吗?

先谢谢..

2 个答案:

答案 0 :(得分:2)

         var site = siteService.createSite("site-dashboard", "gamma-site", "Gamma Site", "A site description", siteService.PUBLIC_SITE, "st:site");

这可以帮助您在存储库级别创建站点。这将返回具有指定参数的已创建站点的Site对象。

答案 1 :(得分:1)

如果您想使用CMIS API,请参阅以下代码

      package com.kayne.cmis.webscript;
      import org.apache.commons.httpclient.HttpClient;
      import org.apache.commons.httpclient.HttpStatus;
      import org.apache.commons.httpclient.UsernamePasswordCredentials;
      import org.apache.commons.httpclient.auth.AuthScope;
      import org.apache.commons.httpclient.methods.PostMethod;
      import org.apache.commons.httpclient.methods.StringRequestEntity;
      import org.json.JSONObject;
      public class CreateSiteTest {   
      public static void main(String[] args){

  HttpClient client = new HttpClient();
  client.getState().setCredentials(                
   new AuthScope("localhost", 8080, "Alfresco"),           
     new UsernamePasswordCredentials("admin", "admin"));   
   String apiurl ="http://localhost:8080/alfresco/service/api/sites";
  PostMethod post = new PostMethod(apiurl);
  try {
     JSONObject site = new JSONObject();
     site.put("shortName", "kaynezhang");
     site.put("visibility", "PUBLIC");
      site.put("sitePreset", "site-dashboard");


     System.out.println(site.toString());
     post.setDoAuthentication(true);
     post.setRequestHeader("Content-Type", "application/json");
     post.setRequestEntity(new StringRequestEntity(site.toString(), "application/json",  "UTF-8"));


     int status = client.executeMethod(post);
         if (status != HttpStatus.SC_OK) {
            System.err.println("Method failed: " + post.getStatusLine());
             } 
     String resultString = post.getResponseBodyAsString();
     System.out.println(resultString);
  } catch (Exception e) {
     e.printStackTrace();
  } finally {
     post.releaseConnection();
  }   } }

您可以在CMIS REST API中详细了解该主题。

我希望这会对你有所帮助。