我需要知道文件的nodeRef知道磁盘上的文件。
实施例: 我在磁盘上有一个文件2016/6/1/8/0/087dabc7-6b5b-4840-8f3a-d45a55735fac.bin。 我想到这个文件里面的文件的nodeRef。
我知道这个文件的路径保存在节点的cm:content属性中,但是我不想获取所有文档然后迭代它们直到我找到正确的文件。是否有一种不成功的方式(从性能角度来看)呢?
谢谢!
答案 0 :(得分:0)
.bin
文件的nodeRef和名称不是同一个字符串。因此,您不能只获取文件的名称并将其作为nodeRef,AFAIK。
你可以做的一件事就是查询数据库(不幸的是我现在没有露天,所以我无法测试查询,但它应该是这样的):
with tt as(
select node_id
from alf_node_properties
where string_value like '%file-name.bin%')
select * from tt, alf_node
where tt.node_id = alf_node.node_id
在结果中你有uuid,即nodeRef。
您可以做的另一件事是向CMIS查询同时创建的文件,在您的情况下,即2016年6月1日上午8点。