cm:可数方面如何在露天工作?

时间:2016-12-10 13:42:17

标签: java spring alfresco aspect

我已添加:

        <mandatory-aspects>
            <aspect>cm:countable</aspect>
        </mandatory-aspects>

要列出定义,所以每个项目都应该有“增量”字段。但是当创建列表项时,不会发生这种情况。我检查了下面的代码:

  1. nodeService.getAspects(nodeRef)返回项目的所有已定义方面,cm:countable显示在此列表中。
  2. nodeService.getProperty(nodeRef, QName.createQName("http://www.alfresco.org/model/content/1.0", "countable"))返回null。
  3. nodeService.getProperties(nodeRef)返回所有属性,但不存在countable密钥。
  4. 我在露天资源中进行了搜索,发现CounterIncrementActionExecuter已展开ActionExecuterAbstractBase并定义executeImpl,但是:

      在创建新列表项时未调用
    1. executeImpl
    2. ActionExecuterAbstractBase#isApplicableType也未被调用。
    3. ActionExecuterAbstractBase#isApplicableType“查看”applicableTypes变量CounterIncrementActionExecuter中明确 populatd。所以目前还不清楚它应该如何填充以及何时填充。
    4. 所以问题是 - cm:countable方面在露天实际上如何运作?

      UDPATE

      正如我所见,计数器在java代码中递增。因此可以安全地将它与一个数据库和连接到db的多个alfresco实例一起使用吗?

1 个答案:

答案 0 :(得分:0)

此方面通常由Alfresco管理员使用。当节点被服务命中时,它会自动递增数字(整数)属性的值。这通常仅由Alfresco管理员使用

cm:可数方面具有名为 cm:counter 的属性,用于跟踪当前计数。

因此,您获取属性的代码应为。

nodeService.getProperty(nodeRef, QName.createQName("http://www.alfresco.org/model/content/1.0", "counter"))

现在它的工作基于与该方面相关的政策。因此,每当调用节点时,计数器都会递增。