Alfresco 使用CMIS API上载重复文件

Alfresco 使用CMIS API上载重复文件,alfresco,Alfresco,我想将同名的两个文件上载到Alfresco存储库中(我可以将其上载到Documentum中),但我遇到了以下异常 有人能告诉我如何实现它,因为这是我的业务用例,用户可以上传具有相同名称的文档吗?请注意,Documentum中的操作与预期的相同 [2/12/20 16:43:03:554 IST] 00000040 SystemErr R org.apache.chemistry.opencmis.commons.exceptions.CmisContentAlreadyExistsExc

我想将同名的两个文件上载到Alfresco存储库中(我可以将其上载到Documentum中),但我遇到了以下异常 有人能告诉我如何实现它,因为这是我的业务用例,用户可以上传具有相同名称的文档吗?请注意,Documentum中的操作与预期的相同

[2/12/20 16:43:03:554 IST] 00000040 SystemErr     R org.apache.chemistry.opencmis.commons.exceptions.CmisContentAlreadyExistsException: An object with this name already exists: 01120277 File or folder Book_295_12.xlsx already exists
[2/12/20 16:43:03:555 IST] 00000040 SystemErr     R     at org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.convertStatusCode(AbstractAtomPubService.java:506)

为此,应覆盖contentModel.xml:

<type name="cm:folder">
    <title>Folder</title>
    <parent>cm:cmobject</parent>
    <archive>true</archive>
    <properties/>
    <associations>
        <child-association name="cm:contains">
            <source>
                <mandatory>false</mandatory>
                <many>true</many>
            </source>
            <target>
                <class>sys:base</class>
                <mandatory enforced="false">false</mandatory>
                <many>true</many>
            </target>
            <duplicate>false</duplicate>
            <propagateTimestamps>true</propagateTimestamps>
        </child-association>
    </associations>
    <overrides/>
    <mandatory-aspects/>
</type>

文件夹
cm:cmobject
真的
假的
真的
sys:base
假的
真的
假的
真的

如您所见,在与“false”值的子关联中存在重复的参数。您应该将其更改为“true”

我认为复制子关联不是个好主意。是不同的子关联作为属性的名称

如果需要第二个名称,为什么不在其他类型或方面中添加此属性

例如:

        <type name="mycm:mytype">
            <title>Test</title>
            <parent>cm:content</parent>
            <properties>
                <property name="mycm:name">
                    <title>Common name</title>
                    <type>d:text</type>
                </property>
            </properties>
        </type>

试验
cm:内容
通用名
d:文本

现在,您可以使用与mycm:name同名的文档,并且可以将时间戳分配给cm:name。

Alfresco不允许重复名称。它允许重复的标题。它还允许您将一个节点的版本设置为存储两个不同的版本。我认为您需要更改您的要求,因为@Gagravarr说alfresco不允许重复文件,您可以做的一件事是,OOTB Upload webscript重命名您的文件,并在捕获异常时添加“-Counter”增加计数器。在content model.xml中编辑复制参数后,我们面临许多问题。我们遇到了以下问题(1)我们无法看到此更改(contentmodel.xml中的更改)后创建的存储库(文件夹)中的文档。我的意思是说,我们已经更新了contentmodel.xml文件,之后我们在Alfresco存储库中创建了一个新文件夹,但我们发现,即使在成功上载之后,文档也不可见。