使用Apache Chemistry Php Library更新cmis:对象(文档)的名称

时间:2016-08-23 11:43:48

标签: php cmis apache-chemistry

我有一个objectId,我想用Apache Chemistry PHP库更改他的名字(例如)。

我尝试使用化学库提供的updateProperties方法......但我看不到变化。 ¿会发生什么?

image/png

我可以更改文件名吗?

但是我可以完全改变cmis:description属性...为什么cmis:name我不能?

2 个答案:

答案 0 :(得分:1)

我比较了cmislib(python)发送的请求和github上的Apache Chemistry PHP客户端fork,发现后者发送了以下原子请求:

  <atom:title>PRUEBAS</atom:title>
  <atom:summary>PRUEBAS</atom:summary>
  <cmisra:object>
    <cmis:properties>
      <cmis:propertyString propertyDefinitionId="cmis:name">
        <cmis:value>PRUEBAS_MODIFIED</cmis:value>
     </cmis:propertyString>
    </cmis:properties>
  </cmisra:object>

python客户端在<atom:title>标记中发送新名称。我尝试删除<atom:title><atom:summary>标记,然后通过curl --upload-file将文本发送到Alfresco,这样做正常。

所以我的猜测是Alfresco首先考虑<atom:title>标记的值(当尝试更新cmis:name属性时)并回退到<cmis:value>标记的值。

恕我直言,它可以被认为是一个错误的PHP客户端库,应该不是很难修复。

答案 1 :(得分:1)

erny走在正确的轨道上。

public function renameObject($objectId, $name)
{
    $properties = array(
        'cmis:name' => $name
    );
    $options = array(
        'title' => $name,
        'summary' => $name,
    );
    return $this->repository->updateProperties($objectId, $properties, $options);
}

这对我有用,实际上你只需要在选项数组中输入标题来改变名称