- 22 Nov 2022
- 1 Minute to read
- Contributors
- Print
- DarkLight
- PDF
CMIS
- Updated on 22 Nov 2022
- 1 Minute to read
- Contributors
- Print
- DarkLight
- PDF
CMIS
CMIS is an OASIS standard defining services for interoperability of content management tools.
Reference: https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis
The CMIS implementation of Constellio is partial and based on the Apache Chemistry library: https://chemistry.apache.org/project/cmis.html
Supported queries
Constellio implements many of the CMIS standard queries. The description of each of these queries is available in the official documentation of the CMIS standard.
Directory Services
- getRepositoryInfo
- getRepositoryInfos
- getTypeChildren
- getTypeDefinition
- getTypeDescendants
- getChildren
- getFolderParent
- getObjectParents
- getCheckedOutDocs
Object Services
- Create
- createDocument
- createFolder
- deleteObjectOrCancelCheckOut
- deleteTree
- getAllowableActions
- getContentStream
- getObject
- getObjectByPath
- getProperties
- getRenditions
- setContentStream
- appendContentStream
- updateProperties
- bulkUpdateProperties
Versioning Services
- getAllVersions
- Checkout
- checkIn
- getPropertiesOfLatestVersion
Access Control Services (ACL)
- getAcl
- applyAcl
Use
Graphical tool: You can use CMIS Workbench to connect to the Constellio CMIS service. To download: http://chemistry.apache.org/java/developing/tools/dev-tools-workbench.html
Instructions:
- URL for CMIS service: http://<host>:<port>/constellio/atom
- Use Constellio tokens (see article Importing users, Generate a token). The username corresponds to the "serviceKey" and the password to the "token"
- Code examples using CMIS (Java):
- How to create a folder:
session.createFolder() with the following properties
'cmis:objectTypeId': 'folder_default'
'administrativeUnitEntered': '00000000XXX'
'categoryEntered': '000000000XX'
'retentionRuleEntered': '00000000XXX'
'title': 'Your folder title'
'openingDate': '2018-02-10T11:52:53.294+02:00' - How to create a document:
a) First create the form, of type cmis:folder with the following properties:
'cmis:objectTypeId': 'document_default',
'title': 'test.pdf'
b) Then add the file of type cmis:document
session.createDocument()
'cmis:objectTypeId': 'cmis:document',
'cmis:name': 'test.pdf',
'metadata': 'content'