spring-content icon indicating copy to clipboard operation
spring-content copied to clipboard

spring-content-cmis CMIS Compliance (TCK fails)

Open tomas-pritrsky opened this issue 3 years ago • 8 comments

CMIS Workbench TCK test fails when running it against spring-content. I consider the TCK test tell if the server is CMIS compliant or not.

To Reproduce Steps to reproduce the behavior:

  1. follow the tutorial at https://paulcwarren.github.io/spring-content/spring-content-with-cmis-docs/
  2. start server
  3. start CMIS Workbench (I'm using version 1.2.0)
  4. run TCK
  5. it shows plenty of failures, mostly 'property missing'

Expected behavior TCK test passes without errors and spring-content-cmis actually makes the content store CMIS compliant.

Screenshots image image

Thank you.

tomas-pritrsky avatar Sep 14 '22 17:09 tomas-pritrsky

Thanks @tomaspritrsky, atm I consider the cmis module alpha. And you are right I never took the time to make the tck pass. But probably should.

I can spend a bit of time looking into this to see how much effort is involved but would love some help getting there, if possible.

paulcwarren avatar Sep 15 '22 06:09 paulcwarren

I managed to fix the cmis:description (contained in 47 TCK errors), but I can't push it here. There are more properties to be fixed though, but I didn't figure it out. TODO: cmis:secondaryObjectTypeIds cmis:creationDate cmis:lastModificationDate cmis:changeToken cmis:allowedChildObjectTypeIds

cmis:description fix image

tomas-pritrsky avatar Sep 15 '22 17:09 tomas-pritrsky

Great. That's awesome and super helpful.

Can't push? Are you trying to push to branch? Or did you fork?

paulcwarren avatar Sep 15 '22 18:09 paulcwarren

I didn't fork, just pulled this repo and am now trying to push a branch here, it says I don't have write access :) I don't know, never contributed to project on github before :(

tomas-pritrsky avatar Sep 15 '22 19:09 tomas-pritrsky

The way it works is you create fork (using the button top-left) and you commit and push to that. Then create a PR back to this repository.

So I would:

  • git stash your changes
  • create a fork of the main branch of this repo in your github org
  • git stash pop your changes
  • git commit -m "<you message>"
  • git push
  • create PR

paulcwarren avatar Sep 15 '22 19:09 paulcwarren

thanks, see https://github.com/paulcwarren/spring-content/pull/1076 I hope somebody can help with the other CMIS properties.

tomas-pritrsky avatar Sep 15 '22 20:09 tomas-pritrsky

Thanks for the PR @tomas-pritrsky. Looks good. Merged.

I can help you resolve the other issues but it is going to take me a minute to get back set up with the cmis stuff. I'll do my best.

paulcwarren avatar Sep 20 '22 06:09 paulcwarren

no problem @paulcwarren . Your help would be much appreciated. I tried other open-source DMS servers which say support CMIS, but I found they don't support it 100% (TCK failed on all of them... more or less). So, I might just as well stick to your solution and improve on it.

tomas-pritrsky avatar Sep 20 '22 06:09 tomas-pritrsky

Hi @tomas-pritrsky,

I discovered a rather large and intractable problem with the cmis module whilst upgrading to Spring Boot 3. SB3/SF6 requires Java 17 and the apache chemistry library (that provides a lot of the heavy lifting by providing the CMIS Rest API) no longer works on that version of Java. Moreover, with the last release being 7 years ago I am not hopeful that the existing maintainers will address this anytime soon. It might be worth raising an issue to test that theory though?

Sadly, I just do not have the bandwidth to adopt this rest layer either. So, there is an opportunity there for someone to take that on and become a committer on the project. I have asked a few of the larger existing Spring Content users if they would be interested but none of them are as they all view CMIS as basically dead at this point.

So, as it stands the CMIS module is not present in the Spring Content 3. Apologies for any inconvenience that this causes.

paulcwarren avatar Mar 31 '23 04:03 paulcwarren

I'm going to go ahead and cause the associated PRs. Just FYI.

paulcwarren avatar Apr 06 '23 04:04 paulcwarren

Closing "wont fix" due to the apache chemistry project expiring out on us

paulcwarren avatar Sep 07 '23 03:09 paulcwarren