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

Skin messages files (fr and fr_FR) not found

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • 4.3.0
    • 4.3.0
    • Skins
    • None
    • 4.3 RC2

      Following ERROR messages occur when displaying site (and also the same with messages_fr_FR.xml)

      For information a skin based on RSE model is used.

       

      Message: Bundle <skin:rse-sicoval://i18n/messages_fr.xml> not loaded: ExceptionMessage: Bundle <skin:rse-sicoval://i18n/messages_fr.xml> not loaded: ExceptionLocation: org.apache.cocoon.util.log.SLF4JLoggerAdapter.error(SLF4JLoggerAdapter.java:46)Thrown:java.nio.file.NoSuchFileException: D:\Projects\SICOVAL_V4G\cms\web\skins\rse-sicoval\i18n\messages_fr.xml at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:85) at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103) at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108) at java.base/sun.nio.fs.WindowsFileSystemProvider.newByteChannel(WindowsFileSystemProvider.java:231) at java.base/java.nio.file.Files.newByteChannel(Files.java:370) at java.base/java.nio.file.Files.newByteChannel(Files.java:421) at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:420) at java.base/java.nio.file.Files.newInputStream(Files.java:155) at org.ametys.core.util.path.PathSource.getInputStream(PathSource.java:166) at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:231) at org.apache.cocoon.i18n.XMLResourceBundle.reload(XMLResourceBundle.java:281) at org.ametys.core.cocoon.XMLResourceBundle.reload(XMLResourceBundle.java:47) at org.ametys.core.cocoon.XMLResourceBundleFactory.create(XMLResourceBundleFactory.java:38) at org.apache.cocoon.i18n.XMLResourceBundleFactory._select(XMLResourceBundleFactory.java:261) at org.apache.cocoon.i18n.XMLResourceBundleFactory._select(XMLResourceBundleFactory.java:253) at org.apache.cocoon.i18n.XMLResourceBundleFactory.select(XMLResourceBundleFactory.java:207) at org.apache.cocoon.transformation.I18nTransformer$CatalogueInfo.getCatalogue(I18nTransformer.java:2304) at org.apache.cocoon.transformation.I18nTransformer.getMessage(I18nTransformer.java:2189) at org.ametys.core.cocoon.I18nTransformer.getMessage(I18nTransformer.java:180) at org.ametys.web.cocoon.I18nTransformer.getMessage(I18nTransformer.java:172) at org.apache.cocoon.transformation.I18nTransformer.getMessage(I18nTransformer.java:2212) at org.apache.cocoon.transformation.I18nTransformer.startI18NElement(I18nTransformer.java:1289) at org.apache.cocoon.transformation.I18nTransformer.startElement(I18nTransformer.java:1181) at org.ametys.runtime.i18n.I18nizableText.toSAX(I18nizableText.java:309) at org.ametys.runtime.i18n.I18nizableText.toSAX(I18nizableText.java:361) at org.ametys.web.skin.TemplateInformationGenerator.generate(TemplateInformationGenerator.java:75) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:782) at org.apache.cocoon.components.source.impl.SitemapSource.toSAX(SitemapSource.java:414) at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:101) at org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:321) at org.apache.cocoon.sitemap.ContentAggregator.generate(ContentAggregator.java:125) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:483) 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.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.ametys.web.frontoffice.FrontLoginScreenRedirectAction.act(FrontLoginScreenRedirectAction.java:144) at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:125) 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.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.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:551) at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:834)
      

          [CMS-10269] Skin messages files (fr and fr_FR) not found

          Simon Prieul (Inactive) added a comment - - edited

          Debugging into XmlResourceBundlefactory:377 lead me to the conclusion that Ametys does support the region in addition to the language (what I did not expected because I only saw messages_fr.xml and messages_en.xml in my Ametys life).

          As files of pattern "messages_fr_FR.xml" do not exist (as far as I know), it means that we should always pass a Locale which is not region sensitive.

          Which is very annoying

          As a first, quick and simple fix, we could change the line 208 of I18nUtils from :

          langCode = locale.toString();

          to :

          langCode = locale.getLanguage();

          which do not explain why it worked before and not now, as this line is from 2015

           

           

          A better solution would be to create a pipeline that redirects "{0}_{1}_{2}.xml" and "{0}_{1}_{2}_{3}.xml" to "{0}_{1}.xml"

          where

          • {1}

            is is a Regexp to match Locale::getLanguage (ISO-639 can be two or three letter code) (there is a test in XMLResourceBundleFactory that it is not empty but I doubt that...to think about)

          • {2}

            is a Regexp to match Locale::getCountry (uppercase ISO 3166 2-letter code, or a UN M.49 3-digit code) or Local::getVariant

          • {3}

            is a Regexp to match Local::getVariant

           

          Documentation:

          Simon Prieul (Inactive) added a comment - - edited Debugging into XmlResourceBundlefactory:377 lead me to the conclusion that Ametys does support the region in addition to the language (what I did not expected because I only saw messages_fr.xml and messages_en.xml in my Ametys life). As files of pattern "messages_fr_FR.xml" do not exist (as far as I know), it means that we should always pass a Locale which is not region sensitive. Which is very annoying As a first, quick and simple fix, we could change the line 208 of I18nUtils from : langCode = locale.toString(); to : langCode = locale.getLanguage(); which do not explain why it worked before and not now, as this line is from 2015     A better solution would be to create a pipeline that redirects "{0}_{1}_{2}.xml" and "{0}_{1}_{2}_{3}.xml" to "{0}_{1}.xml" where {1} is is a Regexp to match Locale::getLanguage (ISO-639 can be two or three letter code) (there is a test in XMLResourceBundleFactory that it is not empty but I doubt that...to think about) {2} is a Regexp to match Locale::getCountry (uppercase ISO 3166 2-letter code, or a UN M.49 3-digit code) or Local::getVariant {3} is a Regexp to match Local::getVariant   Documentation: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes https://en.wikipedia.org/wiki/ISO_3166-1 https://en.wikipedia.org/wiki/UN_M49

          Same kind :

          Date:			Wed Mar 18 15:06:51 CET 2020 (1584540411886)
          Thread:		http-nio-10002-exec-9
          Message #:	89
          Level:		ERROR
          NDC:			
          Category:	org.ametys.core.cocoon.XMLResourceBundleFactory
          Message:		Bundle <skin-raw:demo://i18n/messages_fr_FR.xml> not loaded: Exception
          Location:	org.apache.cocoon.util.log.SLF4JLoggerAdapter.error(SLF4JLoggerAdapter.java:46)
          Thrown:
          java.nio.file.NoSuchFileException: G:\Dev\Ametys\templates\intranet\master\webapp\cms\skins\demo\i18n\messages_fr_FR.xml
          	at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:85)
          	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
          	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
          	at java.base/sun.nio.fs.WindowsFileSystemProvider.newByteChannel(WindowsFileSystemProvider.java:231)
          	at java.base/java.nio.file.Files.newByteChannel(Files.java:370)
          	at java.base/java.nio.file.Files.newByteChannel(Files.java:421)
          	at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:420)
          	at java.base/java.nio.file.Files.newInputStream(Files.java:155)
          	at org.ametys.core.util.path.PathSource.getInputStream(PathSource.java:166)
          	at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:231)
          	at org.apache.cocoon.i18n.XMLResourceBundle.reload(XMLResourceBundle.java:281)
          	at org.ametys.core.cocoon.XMLResourceBundle.reload(XMLResourceBundle.java:47)
          	at org.ametys.core.cocoon.XMLResourceBundleFactory.create(XMLResourceBundleFactory.java:38)
          	at org.apache.cocoon.i18n.XMLResourceBundleFactory._select(XMLResourceBundleFactory.java:261)
          	at org.apache.cocoon.i18n.XMLResourceBundleFactory.select(XMLResourceBundleFactory.java:207)
          	at org.ametys.core.util.I18nUtils._translate(I18nUtils.java:271)
          	at org.ametys.core.util.I18nUtils.lambda$0(I18nUtils.java:222)
          	at org.ametys.plugins.core.impl.cache.GuavaCache$2.call(GuavaCache.java:118)
          	at org.ametys.plugins.core.impl.cache.GuavaCache$2.call(GuavaCache.java:1)
          	at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4878)
          	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529)
          	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278)
          	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155)
          	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045)
          	at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
          	at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4873)
          	at org.ametys.plugins.core.impl.cache.GuavaCache.get(GuavaCache.java:113)
          	at org.ametys.core.util.I18nUtils.translate(I18nUtils.java:220)
          	at org.ametys.core.util.I18nUtils.translate(I18nUtils.java:184)
          	at org.ametys.core.util.I18nUtils.translate(I18nUtils.java:171)
          	at org.ametys.web.clientsideelement.TemplatesMenu._getTemplateItemConfiguration(TemplatesMenu.java:269)
          	at org.ametys.web.clientsideelement.TemplatesMenu._lazyInitializeTemplateGallery(TemplatesMenu.java:235)
          	at org.ametys.web.clientsideelement.TemplatesMenu.getScripts(TemplatesMenu.java:165)
          	at org.ametys.core.ui.StaticFileImportsClientSideElement.getScripts(StaticFileImportsClientSideElement.java:263)
          	at org.ametys.core.ui.RibbonConfigurationManager._resolveReferences(RibbonConfigurationManager.java:1138)
          	at org.ametys.core.ui.RibbonConfigurationManager._createGroupForUser(RibbonConfigurationManager.java:1088)
          	at org.ametys.core.ui.RibbonConfigurationManager._generateTabGroups(RibbonConfigurationManager.java:880)
          	at org.ametys.core.ui.RibbonConfigurationManager.saxRibbonDefinition(RibbonConfigurationManager.java:813)
          	at org.ametys.plugins.core.ui.WorkspaceGenerator.doGenerate(WorkspaceGenerator.java:186)
          	at org.ametys.web.workspace.WorkspaceGenerator.generate(WorkspaceGenerator.java:91)
          	at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581)
          	at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301)
          	at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:782)
          	at org.apache.cocoon.components.source.impl.SitemapSource.toSAX(SitemapSource.java:414)
          	at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:101)
          	at org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:321)
          	at org.apache.cocoon.sitemap.ContentAggregator.generate(ContentAggregator.java:125)
          	at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581)
          	at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301)
          	at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:483)
          	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.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.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.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:572)
          	at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
          	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
          	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
          	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
          	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
          	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
          	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
          	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
          	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
          	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678)
          	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
          	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
          	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
          	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
          	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853)
          	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587)
          	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
          	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
          	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
          	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
          	at java.base/java.lang.Thread.run(Thread.java:834)
          
          

          Simon Prieul (Inactive) added a comment - Same kind : Date: Wed Mar 18 15:06:51 CET 2020 (1584540411886) Thread: http-nio-10002-exec-9 Message #: 89 Level: ERROR NDC: Category: org.ametys.core.cocoon.XMLResourceBundleFactory Message: Bundle <skin-raw:demo://i18n/messages_fr_FR.xml> not loaded: Exception Location: org.apache.cocoon.util.log.SLF4JLoggerAdapter.error(SLF4JLoggerAdapter.java:46) Thrown: java.nio.file.NoSuchFileException: G:\Dev\Ametys\templates\intranet\master\webapp\cms\skins\demo\i18n\messages_fr_FR.xml at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:85) at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103) at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108) at java.base/sun.nio.fs.WindowsFileSystemProvider.newByteChannel(WindowsFileSystemProvider.java:231) at java.base/java.nio.file.Files.newByteChannel(Files.java:370) at java.base/java.nio.file.Files.newByteChannel(Files.java:421) at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:420) at java.base/java.nio.file.Files.newInputStream(Files.java:155) at org.ametys.core.util.path.PathSource.getInputStream(PathSource.java:166) at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:231) at org.apache.cocoon.i18n.XMLResourceBundle.reload(XMLResourceBundle.java:281) at org.ametys.core.cocoon.XMLResourceBundle.reload(XMLResourceBundle.java:47) at org.ametys.core.cocoon.XMLResourceBundleFactory.create(XMLResourceBundleFactory.java:38) at org.apache.cocoon.i18n.XMLResourceBundleFactory._select(XMLResourceBundleFactory.java:261) at org.apache.cocoon.i18n.XMLResourceBundleFactory.select(XMLResourceBundleFactory.java:207) at org.ametys.core.util.I18nUtils._translate(I18nUtils.java:271) at org.ametys.core.util.I18nUtils.lambda$0(I18nUtils.java:222) at org.ametys.plugins.core.impl.cache.GuavaCache$2.call(GuavaCache.java:118) at org.ametys.plugins.core.impl.cache.GuavaCache$2.call(GuavaCache.java:1) at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4878) at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3529) at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2278) at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2155) at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2045) at com.google.common.cache.LocalCache.get(LocalCache.java:3953) at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4873) at org.ametys.plugins.core.impl.cache.GuavaCache.get(GuavaCache.java:113) at org.ametys.core.util.I18nUtils.translate(I18nUtils.java:220) at org.ametys.core.util.I18nUtils.translate(I18nUtils.java:184) at org.ametys.core.util.I18nUtils.translate(I18nUtils.java:171) at org.ametys.web.clientsideelement.TemplatesMenu._getTemplateItemConfiguration(TemplatesMenu.java:269) at org.ametys.web.clientsideelement.TemplatesMenu._lazyInitializeTemplateGallery(TemplatesMenu.java:235) at org.ametys.web.clientsideelement.TemplatesMenu.getScripts(TemplatesMenu.java:165) at org.ametys.core.ui.StaticFileImportsClientSideElement.getScripts(StaticFileImportsClientSideElement.java:263) at org.ametys.core.ui.RibbonConfigurationManager._resolveReferences(RibbonConfigurationManager.java:1138) at org.ametys.core.ui.RibbonConfigurationManager._createGroupForUser(RibbonConfigurationManager.java:1088) at org.ametys.core.ui.RibbonConfigurationManager._generateTabGroups(RibbonConfigurationManager.java:880) at org.ametys.core.ui.RibbonConfigurationManager.saxRibbonDefinition(RibbonConfigurationManager.java:813) at org.ametys.plugins.core.ui.WorkspaceGenerator.doGenerate(WorkspaceGenerator.java:186) at org.ametys.web.workspace.WorkspaceGenerator.generate(WorkspaceGenerator.java:91) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:782) at org.apache.cocoon.components.source.impl.SitemapSource.toSAX(SitemapSource.java:414) at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:101) at org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:321) at org.apache.cocoon.sitemap.ContentAggregator.generate(ContentAggregator.java:125) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:581) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:301) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:483) 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.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.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.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:572) at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:834)

            Unassigned Unassigned
            dcartier David Cartier-Michaud
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: