如何添加方面/扩展到Alfresco文件夹和文档使用DotCMIS
本文关键字:文件夹 Alfresco 文档 DotCMIS 扩展到 何添加 添加 方面 | 更新日期: 2023-09-27 17:50:06
我有一个使用Java的工作代码,使用这个方法在使用CMIS的alfresco中创建文档和文件夹。
Folder.createFolder(
Map<string, ?> properties,
List<Policy> policies, List<Ace> addAce, List<Ace> removeAce,
OperationContext context);
选择文件夹。createDocument用于创建文档(它们有相同的参数),使用方法如下:
AlfrescoFolder.java
parentFolder.createFolder(
AlfrescoUtilities.mapAlfrescoObjectProperties("cmis:folder",
folderName, title, description, tags),
null, null, null,
AlfrescoSession.getSession().getDefaultContext()
);
// AlfrescoSession.getSession() a custom method that we created to
// create a Session variable
AlfrescoUtilities.java
public static Map<String, Object> mapAlfrescoObjectProperties(
String objectType, String name, String title, String description,
List<String> tags)
{
Map<String, Object> properties = new HashMap<>();
properties.put(PropertyIds.OBJECT_TYPE_ID,
objectType + ",P:cm:titled,P:cm:taggable");
properties.put(PropertyIds.NAME, name);
if (title != null) properties.put("cm:title", title);
if (description != null) properties.put("cm:description", description);
if (tags != null) properties.put("cm:taggable", tags);
return properties;
}
}
在上面的代码中,objectType参数将有cmis:folder
或cmis:document
,我们发现添加添加描述的方面是添加P:cm:titled
来添加描述和标题,添加P:cm:taggable
来附加标签。
现在,我正在使用c#开发一个。net应用程序。当我翻译它并使用相同的方法时,唯一的问题是它只有在我删除P:cm:tittled; P:cm:taggable
时才能工作
下面是创建属性的当前代码:
AlfrescoUtilities.cs
public static Dictionary<string, object> mapAlfrescoObjectProperties(
string objectType, string name, string title, string description,
List<string> tags)
{
Dictionary<string, object> properties = new Dictionary<string, object>();
properties[PropertyIds.ObjectTypeId] = objectType;
// +",P:cm:titled,P:cm:taggable";
properties[PropertyIds.Name] = name; /*
if (title != null) properties["cm:title"] = title;
if (description != null) properties["cm:description"] = description;
if (tags != null) properties["cm:taggable"] = tags;
*/
return properties;
}
正如你注意到的,我注释了其他代码。
唯一有效的是objecttypeid
(无论是cmis:folder还是cmis:document)
还有名字。
请帮助我关于这个。这是一个使用。net 3.5和c#的windows应用程序。Alfresco版本为4.2.3
我们验证了dotCmis <= 0.6.0不支持CMIS 1.1(因此没有对方面属性的本机支持)。
然而,我们成功地测试了http://mail-archives.apache.org/mod_mbox/chemistry-dev/201202.mbox/%3C2D9094AD2E4FBE4B86B8B274D9DB9E081F7A754BF1@SSWPROD1001.synapps-solutions.com % 3 e
与底层CMIS API一起工作,并手动利用Alfresco CMIS扩展。
我们也在会话中验证了。查询("select * from nm:aspectName ")结果确实包含方面属性。