我目前正在从事由另一家公司启动的项目。他们创建了一些 CMIS 连接器,目前用于在 Alfresco 中存储文档。我们没有该连接器/组件的来源。客户和供应商之间的事情变得糟糕,获得我们所拥有的代码是一场艰苦的战斗。
事实证明,每隔一段时间,文档更新就会失败,因为该文件已经被签出并且当前被锁定。考虑到露天服务器内没有用户(这一切都是通过网络服务完成的),我们相信在某些时候它会默默地崩溃并无限期地签出文档。我假设问题出在我们正在管理的应用程序上。问题可能是由 Alfresco 引起的。
我们发现无法更新文档的函数——不是让它签出的函数,而是因为它而失败的函数——是这样的:
cmisHelper.checkIn(cmisHelper.checkOut(cr.getId()), "Update", null, docBytes, mimeType);
cr.getId()
有文档ID。退房失败的原因很明显。
有没有办法签入可能已被另一个会话签出的文档?那个定制的 cmisHelper 类似乎没有任何与解锁相关的内容。您可以猜到,文档在行动中缺失。
我考虑的其他东西是露天的 soem 选项,它会自动签入“过期”结账。但是我还没有找到这样的选择。
谢谢