Uploaded image for project: 'CMS'
  1. CMS
  2. CMS-5243

[UnknownAmetysObjectException] need more information in logs

    • Icon: Improvement Improvement
    • Resolution: Won't Fix
    • Icon: Major Major
    • 4.2.0
    • None
    • None
    • None

      This is an example of log that I get :

      2014-01-21 10:47:02,661 ERROR [sitemap.handled-errors] (http-8080-12;/generate/hautegaronne/_resources/cimm/img/north-mini.png) Failed to process reader
              at <map:read type="ametys-resource"> - resource://org/ametys/web/workspace/sitemap.xmap:564:54
              at <map:mount> - resource://org/ametys/runtime/kernel/sitemap.xmap:199:109
      org.apache.cocoon.ProcessingException: Failed to process reader
              at <map:read type="ametys-resource"> - resource://org/ametys/web/workspace/sitemap.xmap:564:54
              at <map:mount> - resource://org/ametys/runtime/kernel/sitemap.xmap:199:109
              at org.apache.cocoon.ProcessingException.throwLocated(ProcessingException.java:113)
              at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.handleException(AbstractProcessingPipeline.java:957)
              at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setupReader(AbstractProcessingPipeline.java:602)
              at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.preparePipeline(AbstractProcessingPipeline.java:499)
              at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:453)
              at org.apache.cocoon.components.treeprocessor.sitemap.ReadNode.invoke(ReadNode.java:85)
              at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47)
              at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:139)
              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.handleCocoonRedirect(ConcreteTreeProcessor.java:300)
              at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.access$000(ConcreteTreeProcessor.java:49)
              at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor$TreeProcessorRedirector.cocoonRedirect(ConcreteTreeProcessor.java:348)
              at org.apache.cocoon.environment.ForwardRedirector.redirect(ForwardRedirector.java:60)
              at org.apache.cocoon.components.treeprocessor.sitemap.RedirectToURINode.invoke(RedirectToURINode.java:70)
              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:293)
              at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
              at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
              at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
              at java.lang.Thread.run(Unknown Source)
      Caused by: org.ametys.plugins.repository.UnknownAmetysObjectException: There's no object at path img from path /ametys-internal:sites/hautegaronne/ametys-internal:resources/cimm
              at org.ametys.plugins.repository.jcr.TraversableAmetysObjectHelper.getChild(TraversableAmetysObjectHelper.java:150)
              at org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObjectFactory.getChild(DefaultTraversableAmetysObjectFactory.java:51)
              at org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObject.getChild(DefaultTraversableAmetysObject.java:61)
              at org.ametys.plugins.repository.AmetysObjectResolver._resolve(AmetysObjectResolver.java:385)
              at org.ametys.plugins.repository.AmetysObjectResolver.resolve(AmetysObjectResolver.java:347)
              at org.ametys.plugins.repository.jcr.TraversableAmetysObjectHelper.getChild(TraversableAmetysObjectHelper.java:132)
              at org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObjectFactory.getChild(DefaultTraversableAmetysObjectFactory.java:51)
              at org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObject.getChild(DefaultTraversableAmetysObject.java:61)
              at org.ametys.plugins.repository.AmetysObjectResolver._resolve(AmetysObjectResolver.java:385)
              at org.ametys.plugins.repository.AmetysObjectResolver.resolve(AmetysObjectResolver.java:347)
              at org.ametys.plugins.repository.collection.AmetysObjectCollectionFactory.getObject(AmetysObjectCollectionFactory.java:148)
              at org.ametys.plugins.repository.collection.AmetysObjectCollection.getChild(AmetysObjectCollection.java:121)
              at org.ametys.plugins.repository.AmetysObjectResolver._resolve(AmetysObjectResolver.java:385)
              at org.ametys.plugins.repository.AmetysObjectResolver.resolve(AmetysObjectResolver.java:347)
              at org.ametys.plugins.repository.jcr.TraversableAmetysObjectHelper.getChild(TraversableAmetysObjectHelper.java:132)
              at org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObjectFactory.getChild(DefaultTraversableAmetysObjectFactory.java:51)
              at org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObject.getChild(DefaultTraversableAmetysObject.java:61)
              at org.ametys.plugins.repository.AmetysObjectResolver._resolve(AmetysObjectResolver.java:385)
              at org.ametys.plugins.repository.AmetysObjectResolver.resolve(AmetysObjectResolver.java:199)
              at org.ametys.plugins.explorer.resources.readers.AmetysResourceReader.setup(AmetysResourceReader.java:99)
              at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setupReader(AbstractProcessingPipeline.java:595)
              ... 63 more
      

      This log is useless for now, it polluate my logs. But this can be usefull if the log contains the referer and/or more information about the content that generate this error.

      So I would be able to send all the errors to my customer and he would be able to apply modification on contents.

          [CMS-5243] [UnknownAmetysObjectException] need more information in logs

          I agree with Laurence, we cannot tell you from which content this error comes from : it is an url from the browser that asked it...

          The only *bad *technical solution would be to log the "referer" request header... (I open a ticket for this in the Runtime)
          The real solution is to ensure that broken links will return the origin of the issue

          Raphaël Franchet added a comment - I agree with Laurence, we cannot tell you from which content this error comes from : it is an url from the browser that asked it... The only *bad *technical solution would be to log the "referer" request header... (I open a ticket for this in the Runtime) The real solution is to ensure that broken links will return the origin of the issue

          Your first point "We need to get a 404 when there is an error on ressource explorer, instead of error 500" is fixed : EXPLORER-410

          Laurence Aumeunier added a comment - Your first point "We need to get a 404 when there is an error on ressource explorer, instead of error 500" is fixed : EXPLORER-410

          • We need to get a 404 when there is an error on ressource explorer, instead of error 500.
          • CMS 404 errors should log the referer to help to debug.

          Thank you, this would help me on both comments.

          Frederic Ravetier (Inactive) added a comment - We need to get a 404 when there is an error on ressource explorer, instead of error 500. CMS 404 errors should log the referer to help to debug. Thank you, this would help me on both comments.

          You already have the information on logs:

          Caused by: org.ametys.plugins.repository.UnknownAmetysObjectException: There's no object at path img from path /ametys-internal:sites/hautegaronne/ametys-internal:resources/cimm

          The problem is on a resource called "cimm" from resources explorer.
          To see which content generates this error you have the link consistency tool

          For you second comment I dont understand, an ResourceNotFound on cms/skins/xxxx/resources/css/content/bottom_nav.png simply means that you used in your skin (xsl or css) a resource which is missing. It has nothing to do with the contents.

          Laurence Aumeunier added a comment - You already have the information on logs: Caused by: org.ametys.plugins.repository.UnknownAmetysObjectException: There's no object at path img from path /ametys-internal:sites/hautegaronne/ametys-internal:resources/cimm The problem is on a resource called "cimm" from resources explorer. To see which content generates this error you have the link consistency tool For you second comment I dont understand, an ResourceNotFound on cms/skins/xxxx/resources/css/content/bottom_nav.png simply means that you used in your skin (xsl or css) a resource which is missing. It has nothing to do with the contents.

          Same for ressources like cms/skins/xxxx/resources/css/content/bottom_nav.png

          Frederic Ravetier (Inactive) added a comment - Same for ressources like cms/skins/xxxx/resources/css/content/bottom_nav.png

            Unassigned Unassigned
            fravetier Frederic Ravetier (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: