0

我想使用从 Apache Chemistry 页面获得的 PHP CMIS 客户端执行一个简单的查询。作为概念证明,我认为以下代码应该按预期工作:

    <?php
    require_once 'cmis_repository_wrapper.php';

    $repo_url     = 'http://localhost:8080/alfresco/s/cmis';
    $repo_username= 'admin';
    $repo_password= 'admin';
    $query        = 'SELECT * FROM cm:document';

    $client = new CMISService($repo_url, $repo_username, $repo_password);        
    $objs   = $client->query($query);

    foreach($objs->objectList as $obj)
    {
       print_r($obj);
    }
    ?>

但是,当我尝试运行它时,出现以下错误:

警告:DOMDocument::loadXML(): Entity 'nbsp' not defined in Entity, line: 22 in cmis_repository_wrapper.php on line 392

我在实施中遗漏了什么吗?还是化学项目页面提供的包装器有问题?

4

2 回答 2

1

如果您使用的是 Alfresco 4.2.f,则 URL 应为:

http://localhost:8080/alfresco/api/-default-/public/cmis/versions/1.0/atom

此外,也许您只是在包含您的代码段时打错了它,但没有“cm:document”之类的东西。我认为您的意思是“cmis:document”。

于 2014-06-18T18:38:35.320 回答
0

我自己也遇到了一些问题。以下对我有用:

$query = <<<CMIS
  SELECT *
  FROM cmis:document
  WHERE ( CONTAINS('cmis:name:\'$query*\'')
  OR CONTAINS('\'$query\''))
  CMIS;

在您的情况下,您可以尝试:

$query = <<<CMIS
  SELECT *
  FROM cmis:document
  CMIS;

我仍在寻找不同的方法来完成查询,但没有取得太大的成功。让我知道这是否适合您,以及您是否有其他方法。

于 2014-10-13T20:54:48.060 回答