Я пишу приложение на основе OpenCMIS, которое извлекает некоторые данные из Alfresco 3.3.Получить свойства расширения Alfresco с помощью OpenCMIS
Он отлично работает с стандарт Свойства CMIS, такие как cmis:name
или cmis:contentStreamMimeType
; Однако, я не могу получить доступ к Alfresco especific свойства, которые присутствуют на корме КМИС AtomPub как «Alfresco расширений»:
<cmisra:object>
<cmis:properties>
<cmis:propertyString propertyDefinitionId="cmis:name" displayName="Name" queryName="cmis:name">
<cmis:value>test document</cmis:value>
</cmis:propertyString>
<cmis:propertyString propertyDefinitionId="cmis:contentStreamMimeType" displayName="Content Stream MIME Type" queryName="cmis:contentStreamMimeType">
<cmis:value>text/html</cmis:value>
</cmis:propertyString>
...
<alf:aspects>
...
<alf:properties>
<cmis:propertyString propertyDefinitionId="cm:description" displayName="Description" queryName="cm:description">
<cmis:value>This is just a test document</cmis:value>
</cmis:propertyString>
</alf:properties>
</alf:aspects>
</cmis:properties>
</cmisra:object>
Есть ли способ, в котором я могу получить значение cm:descripcion
с OpenCMIS?
Я предполагаю, что мне нужно использовать интерфейс DocumentType
вместо Document
, а затем вызвать его метод getExtensions()
. Но я не знаю, как получить экземпляр DocumentType.
Любая помощь была бы действительно оценена.
С уважением
Edit: Altough ответ Флориан уже работал для меня, я просто понял, что я могу получить значения этих свойств с КМИС SQL, тоже:
select d.*, t.*, a.*
from cmis:document d
join cm:titled t on d.cmis:objectid = t.cmis:objectid
join cm:author a on d.cmis:objectid = a.cmis:objectid
where t.cm:description like ...
Большое спасибо за ваш ответ, Флориан. Да, это работает. Это почти то, что я сделал в моей последней попытке вчера: session.getBinding(). GetObjectService(). GetProperties(). GetExtensions() ... Я просто пытался ответить (List