将用户从一台服务器导出到另一台服务器

  • A+
所属分类:二次开发 使用集成

介绍

在Alfresco中导出用户可能是一个问题,有多种解决方案可以使用,例如alfresco 导出工具

但是现在我们只想将用户和一些属性从一个服务器导出到另一个服务器,并且希望它能用于任何露天版本。

解决方案

解决方案相当简单,让我们创建一个脚本,生成我们将在其他服务器上运行的代码,该代码将在新服务器上重新创建用户。

createUsersGenerator.js

var peopleCollection = search.luceneSearch("TYPE:"{http://www.alfresco.org/model/content/1.0}person" ");

var output = "";
for (var i = 0; i < peopleCollection.length; i++) {
 var pers = peopleCollection[i];

 output += (" if(people.getPerson('" + pers.properties["cm:userName"] + "')==null){\n");
 output += (" user = people.createPerson('" + pers.properties["cm:userName"] + "',
              '" + pers.properties["cm:firstName"] + "',
              '" + pers.properties["cm:lastName"] + "',
              '" + pers.properties["cm:email"] + "',
              'password' ,true);\n");


 if (pers.properties["cm:organization"] != null)
     output += (" user.properties['cm:organization']='" 
                      + pers.properties["cm:organization"] + "';\n");

 if (pers.properties["cm:jobtitle"] != null)
     output += (" user.properties['cm:jobtitle']='" 
                 + pers.properties["cm:jobtitle"] + "';\n");

 if (pers.properties["cm:location"] != null)
     output += (" user.properties['cm:location']='" 
        + pers.properties["cm:location"] + "';\n");

     output += (" user.save();\n");
     output += ("}\n");
 }


var article = companyhome.createNode("createUsers.js", "cm:content");
article.content = output;
article.save();

它创建一个文件createUsers.js,当执行此文件时,alfresco将创建具有属性的用户,例如:名称,电子邮件,组织,岗位和地址。如果您愿意,可以添加其他属性。

让我们看看createUsers.js

if(people.getPerson('prvoslav')==null){
    user = people.createPerson('prvoslav','Prvoslav', 'Savic','prvoslav.savic@alfrescoblog.com',                              'password' ,true);
     user.properties['cm:organization']='AlfrescoBlog';
     user.properties['cm:jobtitle']='Blogger';
     user.properties['cm:location']='Serbia';
     user.save();
}

在其他Alfresco上执行createUsers.js脚本,您将获得相同的用户,并且具有相同的属性。

总结

至此,我们在不使用alfresco导出工具的情况下将用户从一台服务器“复制”到另一台服务器。

发表评论

您必须才能发表评论!