[英]Add metadata when creating file in alfresco from java
當我從 java 創建文件時,我想將自定義元數據添加到文件中。
我可以添加一些從我看到教程的頁面復制的屬性,但我不能添加更多。
這是我的代碼:
Map<String, Object> properties2 = new HashMap<String, Object>();
properties2.put(PropertyIds.OBJECT_TYPE_ID, "cmis:document");
properties2.put(PropertyIds.NAME, file.getOriginalFilename());
properties2.put("propertyName", "propertyValue");
這是我得到的錯誤:
Property 'propertyName' is not valid for this type or one of the secondary types!
謝謝。
我不知道您使用哪個 function 來創建新的“文件”,但正確的做法是使用nodeService.createNode()
。 或者,如果您只想添加屬性nodeService.setProperties()
。 參數屬性的類型是Map<QName,Serializable>
而不是Map<String, Object>
。 所以代碼可以是這樣的:
Map<QName, Serializable> properties = new HashMap<QName, Serializable>();
properties.put(ContentModel.PROP_TITLE, "My title");
properties.put(ContentModel.PROP_DESCRIPTION, "My description");
properties.put(QName.createQName("http://www.somceCo.cz/org/model/content/1.0", "my_property"), "My value");
nodeService.setProperties(nodeRef,properties);
最好在名為 Model 的單獨文件中擁有所有自己的 QName。在此處獲取靈感https://github.com/Alfresco/alfresco-data-model/blob/master/src/main/java/org/alfresco/model/ContentModel。 java
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.