Resources Explorer is out of work after wrong CMIS connection set
If Resources Explorer cannot create the CMIS connection set, it makes it out of work :
- The Resources Explorer content cannot be displayed
- New resource or folder creation unavailable
[EXPLORER-188] Resources Explorer is out of work after wrong CMIS connection set
On version 2.5 (on Ametys 3.5), the validity of the connection seems to be verify at the creation.
On version 2.4 (on Ametys 3.4), I can reproduce exactly the same behaviour as David described.
I get this error into the logs :
2012-10-04 11:45:55,599 ERROR [sitemap.handled-errors] (http-8081-2;/cms34/plugins/explorer/child-nodes) Failed to process pipeline at <map:serialize type="xml"> - resource://org/ametys/plugins/explorer/sitemap.xmap:113:33 at <map:generate type="resources-explorer"> - resource://org/ametys/plugins/explorer/sitemap.xmap:112:47 at <map:mount> - resource://org/ametys/cms/workspace/sitemap.xmap:194:81 at <map:mount> - resource://org/ametys/web/workspace/sitemap.xmap:354:105 at <map:mount> - resource://org/ametys/runtime/kernel/sitemap.xmap:198:109 org.apache.cocoon.ProcessingException: Failed to process pipeline at <map:serialize type="xml"> - resource://org/ametys/plugins/explorer/sitemap.xmap:113:33 at <map:generate type="resources-explorer"> - resource://org/ametys/plugins/explorer/sitemap.xmap:112:47 at <map:mount> - resource://org/ametys/cms/workspace/sitemap.xmap:194:81 at <map:mount> - resource://org/ametys/web/workspace/sitemap.xmap:354:105 at <map:mount> - resource://org/ametys/runtime/kernel/sitemap.xmap:198:109 at org.apache.cocoon.ProcessingException.throwLocated(ProcessingException.java:145) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.handleException(AbstractProcessingPipeline.java:953) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:583) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:280) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:481) at org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:144) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.Cocoon.process(Cocoon.java:699) at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1159) at org.ametys.runtime.servlet.RuntimeServlet._doService(RuntimeServlet.java:135) at org.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:92) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662) Caused by: org.apache.chemistry.opencmis.commons.exceptions.CmisInvalidArgumentException: No such repository: toto at org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.convertStatusCode(AbstractAtomPubService.java:423) at org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.read(AbstractAtomPubService.java:554) at org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.getRepositoriesInternal(AbstractAtomPubService.java:718) at org.apache.chemistry.opencmis.client.bindings.spi.atompub.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:59) at org.apache.chemistry.opencmis.client.bindings.impl.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:85) at org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:109) at org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:96) at org.ametys.plugins.explorer.cmis.CMISTreeFactory.getAtomPubSession(CMISTreeFactory.java:310) at org.ametys.plugins.explorer.cmis.CMISRootResourcesCollection.getCMISSession(CMISRootResourcesCollection.java:97) at org.ametys.plugins.explorer.cmis.CMISRootResourcesCollection.getIcon(CMISRootResourcesCollection.java:203) at org.ametys.plugins.explorer.resources.generators.ResourcesExplorerGenerator.saxCollection(ResourcesExplorerGenerator.java:149) at org.ametys.plugins.explorer.resources.generators.ResourcesExplorerGenerator._saxNode(ResourcesExplorerGenerator.java:114) at org.ametys.plugins.explorer.resources.generators.ResourcesExplorerGenerator.generate(ResourcesExplorerGenerator.java:82) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579) ... 59 more
I can not reproduce.
The CMIS folder is marked with a "danger" icon. The brother files or folder are well display.
I can modify the CMIS settings.
See screenshot.
The problem still exists if URL, login or password set are wrong.
Also if URL of the service exists but doesn't implement CMIS protocol
To reproduct the issue you can set :
Valid settings are
URL : http://cmis.demo.nuxeo.org/nuxeo/atom/cmis
login : Administrator
password : Administrator
If you change these settings as this for example :
URL : http://cmis.demo.nuxeo.org/nuxeo/atom/cmis/toto
login : Administrator
password : Administrator
or
URL : http://cmis.demo.nuxeo.org/nuxeo/atom/cmis
login : toto
password : Administrator
Resource Explorer is out of work and CMIS settings have to be corrected or cleared from repository.
It is due to chemistry version. The exception is not treated in same way