0

我的 Alfresco (4.1.5) 存储库中有一个文件,我想通过 Alfresco 服务 REST API 读取其中的内容。对于查找,我想使用文件路径,而不是 UUID。但是,路径查找不起作用,只有 UUID 查找起作用。我找不到错误。

这是文件路径:

显示路径和文件名:

/Company Home/Data Dictionary/Cleaner Configs/cleaner.properties               

QNamePath:

/app:company_home/app:dictionary/cm:Cleaner_x0020_Configs/cm:cleaner.properties

通过 UUID 查找适用于以下 REST API url:

http://localhost:8080/alfresco/service/cmis/i/2391adf9-365c-4959-bf30-8f001154c100/content

但是,仅按路径查找不起作用。无论是主路径还是显示路径:

http://localhost:8080/alfresco/service/cmis/p/app:company_home/app:dictionary/cm:Cleaner_x0020_Configs/cm:cleaner.properties/content?a=false

http://localhost:8080/alfresco/service/cmis/p/Company%20Home/Data%20Dictionary/Cleaner%20Configs/cleaner.properties/content?a=false

在这两种情况下,我都会收到 404 错误:

Message:    10080001 Unable to find ObjectPathReference[storeRef=workspace://SpacesStore,path=/app:company_home/app:company_home/app:dictionary/cm:Cleaner_x0020_Configs/cm:cleaner.properties]

Exception:  org.springframework.extensions.webscripts.WebScriptException - 10080001 Unable to find ObjectPathReference[storeRef=workspace://SpacesStore,path=/app:company_home/app:company_home/app:dictionary/cm:Cleaner_x0020_Configs/cm:cleaner.properties]

参考:

http://wiki.alfresco.com/wiki/CMIS_Web_Scripts_Reference#Get_Content_.28getContent.29

获取指定文档的内容流,或获取文档的指定再现的再现流。

GET /alfresco/service/cmis/p{path}/content{property}?a={attach?}

4

1 回答 1

1

我发现了问题,感谢@Gagravarr 的提示:

我必须使用显示路径但在路径中省略 /Company%20Home/,因为请求 url 中使用的路径被视为相对于 /Company%20Home 节点。

这有效:

http://<host:port>/alfresco/service/cmis/p/Data%20Dictionary/Cleaner%20Configs/cleaner.properties/content?a=false
于 2013-11-08T10:28:25.837 回答