CMDBuild Forum

Cmdbuild 4.0 DMS CMIS

in version 4.0 the CMIS type was removed from DMS.
Will this option be available in future versions?

The DMS CMIS integration, starting from CMDBuild version 4.0, is available as an additional plugin. You can download it from this link:

1 Like

Hey, @tecnoteca thanks for the plugin hint.
However, in v.4.0.0 all uploads (DMS, Plugin Manager) seem to fail with

2025-06-02T10:57:07.143Z [req:4098de] ERROR o.c.w.security.SessionTokenFilter - error retrieving session token from request
java.lang.IllegalStateException: Unable to process parts as no multi-part configuration has been provided
	at org.apache.catalina.connector.Request.parseParts(Request.java:2427) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.Request.doParseParameters(Request.java:2799) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.Request.parseParameters(Request.java:2755) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.Request.getParameter(Request.java:1044) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:152) ~[catalina.jar:11.0.2]
	at org.cmdbuild.webapp.security.SessionTokenFilter.getSessionTokenFromRequest(SessionTokenFilter.java:183) ~[classes/:4.0.0]
	at org.cmdbuild.webapp.filters.RequestTrackingFilter.lambda$doFilterInternal$2(RequestTrackingFilter.java:161) ~[classes/:4.0.0]
	at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:181) ~[guava-33.0.0-jre.jar:na]
	at org.cmdbuild.webapp.filters.RequestTrackingFilter.doFilterInternal(RequestTrackingFilter.java:181) ~[classes/:4.0.0]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278) ~[spring-web-6.2.2.jar:6.2.2]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109) ~[catalina.jar:11.0.2]
	at org.cmdbuild.webapp.filters.BootCheckFilter.doFilterAfterBootCheck(BootCheckFilter.java:111) ~[classes/:4.0.0]
	at org.cmdbuild.webapp.filters.BootCheckFilter.doFilterInternal(BootCheckFilter.java:70) ~[classes/:4.0.0]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278) ~[spring-web-6.2.2.jar:6.2.2]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:79) ~[catalina.jar:11.0.2]
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) ~[catalina.jar:11.0.2]
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) ~[catalina.jar:11.0.2]
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:663) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) ~[catalina.jar:11.0.2]
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:395) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1746) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1148) ~[tomcat-util.jar:11.0.2]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) ~[tomcat-util.jar:11.0.2]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) ~[tomcat-util.jar:11.0.2]
	at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]
2025-06-02T10:57:07.171Z [req:4098de] ERROR o.c.w.f.RequestTrackingFilter$$SpringCGLIB$$0 - error processing request = 4098decfab0340763c8904pw
java.lang.IllegalStateException: Unable to process parts as no multi-part configuration has been provided
	at org.apache.catalina.connector.Request.parseParts(Request.java:2427) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.Request.doParseParameters(Request.java:2799) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.Request.parseParameters(Request.java:2755) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.Request.getParameter(Request.java:1044) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:152) ~[catalina.jar:11.0.2]
	at org.cmdbuild.webapp.security.SessionTokenFilter.getSessionTokenFromRequest(SessionTokenFilter.java:183) ~[classes/:4.0.0]
	at org.cmdbuild.webapp.filters.RequestTrackingFilter.lambda$doFilterInternal$2(RequestTrackingFilter.java:161) ~[classes/:4.0.0]
	at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:181) ~[guava-33.0.0-jre.jar:na]
	at org.cmdbuild.webapp.filters.RequestTrackingFilter.doFilterInternal(RequestTrackingFilter.java:181) ~[classes/:4.0.0]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278) ~[spring-web-6.2.2.jar:6.2.2]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109) ~[catalina.jar:11.0.2]
	at org.cmdbuild.webapp.filters.BootCheckFilter.doFilterAfterBootCheck(BootCheckFilter.java:111) ~[classes/:4.0.0]
	at org.cmdbuild.webapp.filters.BootCheckFilter.doFilterInternal(BootCheckFilter.java:70) ~[classes/:4.0.0]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362) ~[spring-web-6.2.2.jar:6.2.2]
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278) ~[spring-web-6.2.2.jar:6.2.2]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:79) ~[catalina.jar:11.0.2]
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) ~[catalina.jar:11.0.2]
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) ~[catalina.jar:11.0.2]
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:663) ~[catalina.jar:11.0.2]
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[catalina.jar:11.0.2]
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) ~[catalina.jar:11.0.2]
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:395) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1746) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-coyote.jar:11.0.2]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1148) ~[tomcat-util.jar:11.0.2]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) ~[tomcat-util.jar:11.0.2]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) ~[tomcat-util.jar:11.0.2]
	at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]

how to install plugin? is there any instructions?
I didn’t find manual for version 4.0.0.

Please share the code of plugin cmdbuild-dms-cmis-1.0.0

@jaroslaw you could install it through Plugin Manager in Administrative module, but considering exception - it will fail. However, you can just drop cmdbuild-dms-cmis-1.0.0.jar into $CATALINA_HOME/conf/cmdbuild/WEB-INF/lib folder - this will make your plugin available for configuration in Administrative module.
But this wouldn’t help you much, due to the exception above - as attachment uploads would fail as well. Right now I’m trying to fall back to 3.4.4, until fix/workaround available.

Are you using Tomcat 10 or another version?

@tecnoteca hey! I was using Tomcat 11, with Tomcat 10 it works, thanks!