Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-37329

Cannot download a file from a CMIS repository because of calling getObject with versionSeriesId

    Details

      Description

      I have mounted a CMIS compliant repository NemakiWare(https://github.com/NemakiWare/NemakiWare), which I have developed, and tried to mount it to Liferay.
      I succeeded in mounting, traverse all the file hierarchy and maybe retrieving metadata of a document and even creating a new document file which can be downloaded in my client application. But downloading a file from within Liferay has failed.

      On my CMIS server part, getObject method is called with the vesionSeriesId of the document as the objectId argument. This of course ends up in throwing a CmisObjectNotFound exception, for in my repository versionSeriesId is always different from any objectId.

      On Liferay part, as far as I've been digging into this issue, I found the following code:

      com.liferay.portal.repository.cmis.CMISRepository LINE:1822
      ----------
      String versionSeriesId = toFileEntryId(fileEntryId);

      Document document = (Document)session.getObject(versionSeriesId);

      return document;
      ----------

      So the getObject method itself is called correctly from Liferay.
      Why does Liferay send versionSeriesId as objectId?
      I suupose that it's a bug in terms of CMIS specification.

      According to CMIS specification, versionSeriesId has nothing to do with objectId, though a repository is just allowed to make them the same.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Days since last comment:
                6 years, 12 weeks ago

                Packages

                Version Package
                6.1.1 CE GA2