首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cmis中的斜杠:name和cmis:contentStreamFilename

cmis中的斜杠:name和cmis:contentStreamFilename
EN

Stack Overflow用户
提问于 2017-09-29 07:39:58
回答 2查看 368关注 0票数 1

CMIS 1.1规范说:

2.1.5.3路径 文件夹层次结构可以用规范的符号(如路径)表示。..。 pathSegment令牌不能包含“/”字符。 存储库是如何为pathSegment选择值的fic。存储库可以选择使用cmis:名称或内容流、pathSegment令牌的fi连名。

但是,我能够在Documentum 7.1.0000.0146服务器中创建以下文档:

如您所见,cmis:namecmis:contentStreamFilename都包含一个斜杠。实际上,cmis:contentStreamFilename似乎变成了无论cmis:name是什么(加上扩展)。

这是Documentum的CMIS实现中的一个错误吗?

当此服务器使用getObjectByPath路径元素正确地回复“正常”cmis:name请求时,是否有任何方法在上面的屏幕截图中对对象使用getObjectByPath?或者getObjectByPath对这样的服务器是不可用的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-01 04:45:30

我确实认为这是Documentum的CMIS实现中的一个bug (也就是说,允许斜杠成为cmis:namecmis:contentStreamFileName的一部分是一个bug )。我从Apache项目中找到了这个错误报告,在该项目中,似乎修复了一个类似的bug。关于这一问题的一些评论说明:

给定对象的下列路径: /a/b/c/d.pdf 路径段标记是"a“、"b”、"c“和"d.pdf”。 getObjectByPath方法确实假定您将传递一个由路径段标记组成的路径,该路径由正斜杠分隔。这就是CMIS按照规范定义“路径”的方式。

...and...

存储库可以使用cmis:name作为pathSegment令牌,但是,如果存储库不使用cmis:name作为pathSegment令牌,这种情况显然会失败。 有一些可能的场景不将cmis:name用作pathSegment令牌: 1)使用的是内容流文件名,而不是cmis:名称,正如规范中所描述的那样。 2)存储库支持在文件夹中使用相同的cmis:name创建文档,这意味着不可避免地使用其他值而不是cmis:name作为其pathSegment,因为根据规范“每个项目的pathSegment令牌必须唯一标识文件夹中的项”。

我不太了解Documentum,所以这个bug在抓取对象时是否会显现,就像抛硬币一样。您考虑过使用CMIS工作台来运行一个简单的CMIS查询来使用其中一个属性找到它吗?如果它成功了,我会很有信心(虽然不是100%)它将与getObjectByPath一起工作。

票数 1
EN

Stack Overflow用户

发布于 2017-09-30 07:06:44

我不认为在Documentum存储库中对对象名称有太多限制。如果您想应用业务规则来确保没有用'/‘字符创建对象名称,那么请查看BOF框架。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46484062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档