当前位置: 首页 > 知识库问答 >
问题:

使用Apache Chemistry异步更新Alfresco中的文档内容

东门奕
2023-03-14

是否有某种方法我可以使用OpenCMIS API来异步更新文档内容。

共有1个答案

潘畅
2023-03-14

所有需要更改标记的操作都不能在AsyncSession中使用,因为如果在同一个对象上调度了两个操作,结果将不可预测。但您可以添加自己的可调用。将AsyncSession对象强制转换为AbstractExecutorServiceAsyncSession,并用自己的可调用对象调用Submit。在这里你可以为所欲为。

这样的可调用类可以如下所示:

public class SetContentStreamCallable extends SessionCallable<ObjectId> {
    private Document doc;
    private ContentStream contentStream;
    private boolean overwrite;

    public SetContentStreamCallable(Session session, Document doc, ContentStream contentStream, boolean overwrite) {
        super(session);
        this.doc = doc;
        this.contentStream = contentStream;
        this.overwrite = overwrite;
    }

    @Override
    public ObjectId call() throws Exception {
        return doc.setContentStream(contentStream, overwrite, false);
    }
}

但是请记住,不要在同一个文档上运行两个任务!

 类似资料:
  • 我想知道如何使用OpenCMIS在Alfresco中手动更改文档版本?从现在开始,当我更新文档时,每次alfresco都会改变版本本身,但我想从用户输入中改变版本,如1.0、2.0、2.1等。 为(如)。document.txt 1.0,document.txt 1.1 我想放置版本2.3而不是document.txt1.1

  • 我在Elasticsearch中索引了一个文档,如下所示: 我尝试通过以下命令更新计数字段: 但是,我收到了以下错误: 我到底做了什么,却不见了?我在http://www.elasticsearch.org/guide/reference/api/update.html跟踪文件,但它不起作用。 此外,我还包括父字段: 但还是没有成功。有人能帮我解决这个错误吗?

  • 更新文档操作既可以完全覆盖现存文档全部字段,又可以部分更新字段(更改现存字段,或添加新字段)。 部分更新 如果你要部分更新文档(如更改现存字段,或添加新字段),你可以在 body 参数中指定一个 doc 参数。这样 doc 参数内的字段会与现存字段进行合并。 $params = [ 'index' => 'my_index', 'type' => 'my_type', 'i

  • 我的workflow.get.js文件 当使用webscript时,我得到错误 异常:org.alfresco.error.alfresCoruntimeException-06190503 referenceError:未定义“document”。(在存储库存储工作区://spacesstore/company home/data dictionary/web Scripts中)#11)org.

  • 我想更新现有mongodb文档中的字段。但设定值应为旧值和新值的平均值。 我可以从mongodb文档中获取旧值并计算平均值,并将其设置到字段中,但这不是线程安全性,在计算平均值时,mongodb文件中的旧值可能会更改。 示例,文档: { ' _ id ':ObjectId(" 55d 49338 b 9796 c 337 c 894 df 3 "),值:10 } Python代码: 以前: { '

  • 问题内容: 是否可以在露天使用CMIS进行批量更新。 我有不同的文档类型,并且每个文档类型在露天仓库中都有多个文档。 现在,我的要求是,如果我将更新任何文档的任何单个属性,则它应与相同类型的所有文档一起反映。 我可以使用CMIS吗? 如果是,请提供步骤和示例代码。 提前致谢 问题答案: 困难的方法(和健谈的方法)是查询您的文档,然后在每个文档上设置属性。但是CMIS规范实际上提供了一种更好的方法: