使用UUID导出文件夹Alfresco
我想导出几个文件,绝对保存它们的UUID,以便将它们导入另一个GED Alfresco使用UUID导出文件夹Alfresco,alfresco,alfresco-share,alfresco-webscripts,Alfresco,Alfresco Share,Alfresco Webscripts,我想导出几个文件,绝对保存它们的UUID,以便将它们导入另一个GED Alfresco 我使用Alfresco 4.2.f,如何才能做到这一点?您必须使用Alfresco Explorer应用程序中的导出工具创建自己的Alfresco内容包(ACP)。通过这种方式,您将在一个acp(zip)文件中导出所有内容,同时保留UUID、属性、关联、权限和角色 然后,为了在Alfresco目标实例中导入内容,保留UUID,您必须在扩展类路径中或在扩展Alfresco导入器模块组件的AMP Spring上下
我使用Alfresco 4.2.f,如何才能做到这一点?您必须使用Alfresco Explorer应用程序中的导出工具创建自己的Alfresco内容包(ACP)。通过这种方式,您将在一个acp(zip)文件中导出所有内容,同时保留UUID、属性、关联、权限和角色 然后,为了在Alfresco目标实例中导入内容,保留UUID,您必须在扩展类路径中或在扩展Alfresco导入器模块组件的AMP Spring上下文中定义一个新的Spring bean,如下代码段所示:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>
<bean id="yourModule.bootstrapSpaces" class="org.alfresco.repo.module.ImporterModuleComponent" parent="module.baseComponent">
<property name="moduleId" value="yourModule" />
<property name="name" value="yourModule.bootstrapSpaces" />
<property name="description" value="Initial data requirements" />
<property name="sinceVersion" value="1.0" />
<property name="appliesFromVersion" value="1.0" />
<!-- Data properties -->
<property name="importer" ref="spacesBootstrap" />
<property name="bootstrapViews">
<list>
<props>
**<prop key="uuidBinding">REPLACE_EXISTING</prop>**
<prop key="path">/${spaces.company_home.childname}</prop>
<prop key="location">alfresco/extension/bootstrap/yourExportedContents.acp</prop>
</props>
</list>
</property>
</bean>
</beans>
希望这有帮助:)除了Piergiorgio Lucidi的答案外,下面是另一个在Alfresco 4.2.f中测试的逐步方法:
/{http://www.alfresco.org/model/application/1.0}家公司/{http://www.alfresco.org/model/site/1.0}地点/{http://www.alfresco.org/model/content/1.0}myportal/{http://www.alfresco.org/model/content/1.0}文档库/{http://www.alfresco.org/model/content/1.0}生产
/app:company\u home/st:sites/cm:myportal/cm:documentLibrary/cm:production
tomcat/webapps/alfresco/WEB-INF/classes/alfresco/bootstrap context.xml
,并在关闭
之前将其添加到底部。将路径替换为步骤2中的url和实际acp文件的路径:
<bean id="yourModule.bootstrapSpaces" class="org.alfresco.repo.module.ImporterModuleComponent" parent="module.baseComponent">
<property name="moduleId" value="org.alfresco.integrations.google.docs" />
<property name="name" value="yourModule.bootstrapSpaces" />
<property name="description" value="Initial data requirements" />
<property name="sinceVersion" value="1.0" />
<property name="appliesFromVersion" value="1.0" />
<property name="importer" ref="spacesBootstrap" />
<property name="bootstrapViews">
<list>
<props>
<prop key="uuidBinding">REPLACE_EXISTING</prop>
<prop key="path">/app:company_home/st:sites/cm:myportal/cm:documentLibrary/cm:production</prop>
<prop key="location">/home/ec2-user/alfresco-top-export-20201209.acp</prop>
</props>
</list>
</property>
</bean>
替换现有的
/应用程序:公司主页/st:sites/cm:myportal/cm:documentLibrary/cm:production
/home/ec2用户/alfresco-top-export-20201209.acp
它通过扩展现有模块来工作,因此您不需要自己定义模块。alfresco 4.2中有一个acp导出/导入功能:@Akah会保留UUID吗?别这么认为。谢谢你的回答。我以前尝试过这个,但是UUID没有被保留。导出为ACP,包括UUID,然后使用
UPDATE\u EXISTING
?
<bean id="yourModule.bootstrapSpaces" class="org.alfresco.repo.module.ImporterModuleComponent" parent="module.baseComponent">
<property name="moduleId" value="org.alfresco.integrations.google.docs" />
<property name="name" value="yourModule.bootstrapSpaces" />
<property name="description" value="Initial data requirements" />
<property name="sinceVersion" value="1.0" />
<property name="appliesFromVersion" value="1.0" />
<property name="importer" ref="spacesBootstrap" />
<property name="bootstrapViews">
<list>
<props>
<prop key="uuidBinding">REPLACE_EXISTING</prop>
<prop key="path">/app:company_home/st:sites/cm:myportal/cm:documentLibrary/cm:production</prop>
<prop key="location">/home/ec2-user/alfresco-top-export-20201209.acp</prop>
</props>
</list>
</property>
</bean>