You are not logged in.
Pages: 1
Bonjour,
Quelle est la bonne démarche à suivre pour intégrer une nouvelle langue (Arabe par exemple) dans la version 3.6.
Bien cordialement.
Last edited by elhajjaji (08/10/2014 17:16:28)
Offline
Bonjour,
Souhaitez-vous créer un site en Ababe ? ou traduire Ametys en Arabe ?
Raphael Franchet
Expert Ametys
Offline
Pour l'instant, juste créer un site en arabe. Mais, également, si vous voulez, je peux vous faire des proposition d'internationalisation de message_ar.xml, application_ar.xml ... (mais à mon rythme ) pour traduire Ametys.
Merci pour votre retour.
Offline
Pour la traduction du back-office, le problème est la maintenance, mais localement, vous pourriez le traduire dans votre instance d'Ametys en plaçant les fichiers i18n au bon endroit. Bref
1) Concernant le site, la première chose est de modifier la liste des langues gérées dans le fichier WEB-INF/param/languages.xml
2) Ensuite, et c'est le plus compliqué, l'ajout d'un drapeau n'est pas prévu ; il faudrait par exemple faire un règle Apache si vous utilisez Apache devant Tomcat, ou bien dezipper le jar "cms-resources", ajouter le fichier et le remettre.
Et dans tous les cas ouvrir un ticket en anglais sur le jira : pour qu'il soit possible d'en ajouter.
3) Il faut traduire, toutes les clefs utilisées par Ametys et ses plugins sur le front office. Cela se fait en ajoutant des fichiers messages_XX.xml dans le répertoire WEB-INF/i18n/plugins/PLUGINATRADUIRE/messages_XX.xml
Vous trouverez les fichiers actuels à traduire dans le svn.
Le problème étant que vous tomberez aussi bien sur des traductions concernant le back-office que le front-office.
Vous redémarrez et c'est bon.
Raphael Franchet
Expert Ametys
Offline
J'ajoute aussi, que dans la saisie du back-office, la direction est toujours LTR, alors que sauf erreur de ma part, l'arabe se lit de droite à gauche : il se peut que cela pose problème dans l'éditeur riche... ?
Merci de nous faire un retour d'expérience là dessus.
Raphael Franchet
Expert Ametys
Offline
Merci pour cette réponse,
Je vais vous faire un retour d'expérience sur l'intégration de la langue arabe mais aussi sur la direction de saisie (Éditeur riche) car l'arabe c'est effectivement RTL.
Bien cordialement
Offline
Bonjour,
Premier retour
Ce que j'ai fait:
Résultat:
org.xml.sax.SAXException: org.ametys.web.cocoon.I18nTransformeri18n:date - parsing error. java.text.ParseException: Unparseable date: "2014-10-10T00:33:20.158+02:00" at org.apache.cocoon.transformation.I18nTransformer.formatDate_Time(I18nTransformer.java:1956) at org.apache.cocoon.transformation.I18nTransformer.endDate_TimeElement(I18nTransformer.java:1830) at org.apache.cocoon.transformation.I18nTransformer.endI18NElement(I18nTransformer.java:1490) at org.apache.cocoon.transformation.I18nTransformer.endElement(I18nTransformer.java:1181) at org.ametys.cms.transformation.EnhancementHandler.endElement(EnhancementHandler.java:125) at org.ametys.plugins.glossary.transformation.DefinitionEnhancementHandler.endElement(DefinitionEnhancementHandler.java:176) at org.ametys.cms.transformation.EnhancementHandler.endElement(EnhancementHandler.java:125) at org.ametys.plugins.datainclusion.transformation.DataInclusionEnhancementHandler.endElement(DataInclusionEnhancementHandler.java:193) at org.ametys.cms.transformation.EnhancementTransformer.endElement(EnhancementTransformer.java:89) at org.apache.xml.serializer.ToXMLSAXHandler.endElement(ToXMLSAXHandler.java:263) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1401) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394) at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:162) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394) at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:162) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394) at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394) at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394) at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376) at org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:395) at org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:178) at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400) at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2270) at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1356) at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3447) at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:408) at org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:56) at org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer.java:586) at org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:56) at org.apache.cocoon.sitemap.ContentAggregator.generate(ContentAggregator.java:133) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:280) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:780) 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.toSAX(SourceUtil.java:181) at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:140) at org.ametys.web.repository.PageGenerator._saxSource(PageGenerator.java:580) at org.ametys.web.repository.PageGenerator._saxZoneItem(PageGenerator.java:540) at org.ametys.web.repository.PageGenerator._saxZoneItems(PageGenerator.java:378) at org.ametys.web.repository.PageGenerator._saxZone(PageGenerator.java:309) at org.ametys.web.repository.PageGenerator.generate(PageGenerator.java:231) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:280) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:780) 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:579) 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.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(Thread.java:701) Caused by: java.text.ParseException: Unparseable date: "2014-10-10T00:33:20.158+02:00" at java.text.DateFormat.parse(DateFormat.java:354) at org.apache.cocoon.transformation.I18nTransformer.formatDate_Time(I18nTransformer.java:1954) ... 109 more - See more at: http://cms.domaine.com/domaine.com/ar/nouvelle-page.html?foo=0.5253902347758412#sthash.SOyhEyDb.dpuf
Bien cordialement
Offline
Concernant le chemin, il faut faut utiliser celui que je vous ai indiqué.
cms/WEB-INF/i18n existe déjà
et vous ajoutez : plugins/cms/messages_ar.xml par exemple
Pour la clef de la nouvelle langue, vous pouvez utiliser le catalogue application.
Donc : <language code="ar" i18n="true">application:LANGUAGES_LABEL_AR</language>
En ajoutant la clef dans le catalogue cms/WEB-INF/i18n/application*.xml
Pour le problème de direction du fil d'ariane, c'est le travail de la charte graphique de s'occuper de cela.
Si vous souhaitez avec une même charte multilingue, vous pouvez faire des tests comme:
<xsl:if test="ametys:lang() = 'ar'">
Et par exemple importer une CSS spéciale RTL pour modifier la charte.
Concernant enfin votre erreur. Il ne peut s'agir d'erreur de compilation, puisque le projet est déjà compilé
Sur le front la page s'affiche sans l'article et vous avez trouvé cette erreur dans les logs du CMS ?
Qu'est-ce qui s'affiche dans le back lui-même ?
Raphael Franchet
Expert Ametys
Offline
En fait le message d'erreur s'affiche sur le bloc même (sur le front de cms).
Last edited by elhajjaji (10/10/2014 12:17:54)
Offline
D'accord.
Dans les logs d'Ametys, vous trouverez l'erreur complète. cms/WEB-INF/logs
avec notamment la cause mère de l'erreur
Raphael Franchet
Expert Ametys
Offline
Lorsque je tente de créer une nouvelle page (avec un nom qui ne répond pas à l'EXP REG :^([0-9-_]*)[a-z].*$), impossible de récupérer la liste des gabarits:
2014-10-10 14:38:42,700 ERROR [sitemap] (http-8080-18;/plugins/core/servercomm/messages.xml) Can not dispatch request '2' : 'web' 'repository/page-templates' '{parentPageId=sitemap://da9a7381-4883-461f-964e-a6f1af6b9ffc, title=صفحة}'
org.apache.cocoon.util.location.LocatedException: Can not dispatch request '2' : 'web' 'repository/page-templates' '{parentPageId=sitemap://da9a7381-4883-461f-964e-a6f1af6b9ffc, title=صفحة}'
at org.ametys.runtime.plugins.core.dispatcher.DispatchGenerator._dispatching(DispatchGenerator.java:159)
at org.ametys.runtime.plugins.core.dispatcher.DispatchGenerator.generate(DispatchGenerator.java:84)
at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579)
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: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(Thread.java:701)
Caused by: org.apache.excalibur.source.SourceException: Exception during processing of cocoon://_plugins/web/repository/page-templates?parentPageId=sitemap://da9a7381-4883-461f-964e-a6f1af6b9ffc&title=صفحة&
at org.apache.cocoon.components.source.impl.SitemapSource.getInputStream(SitemapSource.java:277)
at org.ametys.runtime.plugins.core.dispatcher.DispatchGenerator._dispatching(DispatchGenerator.java:132)
... 61 more
Caused by: org.apache.cocoon.ProcessingException: Failed to process pipeline
at <map:serialize type="xml"> - resource://org/ametys/web/sitemap-back.xmap:477:44
at <map:transform type="i18n"> - resource://org/ametys/web/sitemap-back.xmap:474:44
at <map:generate type="page-templates"> - resource://org/ametys/web/sitemap-back.xmap:473:43
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.source.impl.SitemapSource.getInputStream(SitemapSource.java:267)
... 62 more
Caused by: java.lang.IllegalArgumentException: - doest not match the expected regular expression : ^([0-9-_]*)[a-z].*$
at org.ametys.cms.FilterNameHelper.filterName(FilterNameHelper.java:58)
at org.ametys.web.repository.page.generators.PageTemplatesGenerator.generate(PageTemplatesGenerator.java:77)
at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579)
... 65 more
Et lorsque je crée une page respectant l'exp: (^([0-9-_]*)[a-z].*$), puis la renommer plus tard, j'ai le message:
2014-10-10 14:47:03,242 ERROR [org.ametys.web.repository.PageGenerator] (http-8080-14;/generate/domaine.com/ar/test.html) Unable to display zone item
org.apache.cocoon.ProcessingException: Failed to process pipeline
at <map:serialize type="xhtml"> - resource://org/ametys/web/sitemap-front.xmap:615:50
at <map:transform type="processing-instruction-transform"> - resource://org/ametys/web/sitemap-front.xmap:614:78
at <map:transform type="i18n"> - resource://org/ametys/web/sitemap-front.xmap:610:48
at <map:transform type="docbook-enhancement"> - resource://org/ametys/web/sitemap-front.xmap:609:64
at <map:transform> - resource://org/ametys/web/sitemap-front.xmap:608:111
at <map:transform type="i18n"> - resource://org/ametys/web/sitemap-front.xmap:604:48
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:780)
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.toSAX(SourceUtil.java:181)
at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:140)
at org.ametys.web.repository.PageGenerator._saxSource(PageGenerator.java:580)
at org.ametys.web.repository.PageGenerator._saxZoneItem(PageGenerator.java:540)
at org.ametys.web.repository.PageGenerator._saxZoneItems(PageGenerator.java:378)
at org.ametys.web.repository.PageGenerator._saxZone(PageGenerator.java:309)
at org.ametys.web.repository.PageGenerator.generate(PageGenerator.java:231)
at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579)
at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:280)
at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:780)
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:579)
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.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(Thread.java:701)
Caused by: org.xml.sax.SAXException: org.ametys.web.cocoon.I18nTransformeri18n:date - parsing error.
java.text.ParseException: Unparseable date: "2014-10-10T14:46:43.415+02:00"
at org.apache.cocoon.transformation.I18nTransformer.formatDate_Time(I18nTransformer.java:1956)
at org.apache.cocoon.transformation.I18nTransformer.endDate_TimeElement(I18nTransformer.java:1830)
at org.apache.cocoon.transformation.I18nTransformer.endI18NElement(I18nTransformer.java:1490)
at org.apache.cocoon.transformation.I18nTransformer.endElement(I18nTransformer.java:1181)
at org.ametys.cms.transformation.EnhancementHandler.endElement(EnhancementHandler.java:125)
at org.ametys.plugins.glossary.transformation.DefinitionEnhancementHandler.endElement(DefinitionEnhancementHandler.java:176)
at org.ametys.cms.transformation.EnhancementHandler.endElement(EnhancementHandler.java:125)
at org.ametys.plugins.datainclusion.transformation.DataInclusionEnhancementHandler.endElement(DataInclusionEnhancementHandler.java:193)
at org.ametys.cms.transformation.EnhancementTransformer.endElement(EnhancementTransformer.java:89)
at org.apache.xml.serializer.ToXMLSAXHandler.endElement(ToXMLSAXHandler.java:263)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1401)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:162)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemIf.execute(ElemIf.java:162)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemTemplate.execute(ElemTemplate.java:394)
at org.apache.xalan.templates.ElemCallTemplate.execute(ElemCallTemplate.java:248)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:1376)
at org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:395)
at org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:178)
at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2400)
at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2270)
at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1356)
at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3447)
at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:408)
at org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:56)
at org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer.java:586)
at org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:56)
at org.apache.cocoon.sitemap.ContentAggregator.generate(ContentAggregator.java:133)
at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579)
... 80 more
Caused by: java.text.ParseException: Unparseable date: "2014-10-10T14:46:43.415+02:00"
at java.text.DateFormat.parse(DateFormat.java:354)
at org.apache.cocoon.transformation.I18nTransformer.formatDate_Time(I18nTransformer.java:1954)
... 131 more
Last edited by elhajjaji (10/10/2014 23:05:04)
Offline
Alors pour créer la page, il faut utiliser des caractères latins.
Puis vous pouvez la renommer ensuite avec l'alphabet de votre choix.
Cela vient du fait que le prermier nom sert à créer l'url.
C'est pour cela que la page d'accueil doit être créée en "index" puis renommée en "accueil" par exemple
Raphael Franchet
Expert Ametys
Offline
C'est ce que j'ai fais, Mais le deuxième message d'erreur (ci-dessus), c'est quand je renomme la page, en plus, la page n'est pas visible sur le front.
Last edited by elhajjaji (11/10/2014 12:01:56)
Offline
C'est très étrange. La cause racine du non affichage est :
Caused by: java.text.ParseException: Unparseable date: "2014-10-10T14:46:43.415+02:00"
Hors le format me parait correct justement...
La même chose sur le plan du site "fr" ne pose pas de problème ?
Raphael Franchet
Expert Ametys
Offline
Bonjour,
Sur "fr", je n'ai pas de problème,
Bien cordialement,
Offline
Pour m'aider à cerner le problème, pouvez-vous faire un test : pouvez-vous saisir renommer une page "fr" avec de l'arabe ? Et me confirmer que cela fonctionne.
Raphael Franchet
Expert Ametys
Offline
Bonjour,
J'ai redéployé les applications (cms/site) en incluant uniquement les modifications que vous m'avez recommandé pour la prise en compte d'une nouvelle langue, et je n'ai plus de problème pour aucune des langues (FR/AR). Je reviens vers vous si je constat la réapparition du problème.
Merci infiniment.
Offline
ça me rassure, car je ne comprenais pas bien l'erreur
Raphael Franchet
Expert Ametys
Offline
Bonjour,
Le problème est revenu.
J'ai crée deux pages en français, puis deux pages en arabe (nom en latin puis renommage). J'ai associé ensuite la version française à celle d'arabe, Et le résultat: exceptions (visible sur l'image en pièce jointe)
Si je teste de créer une page en français et la publié dans l'espace arabe, pas d'exception, mais le contenu n'est pas visible sur le front.
Cordialement.
Last edited by elhajjaji (22/10/2014 11:54:39)
Offline
Bonjour,
bon on doit être sur un bug alors, car visiblement quand on regarde le message d'erreur, il râle sur le fait qu'il n'arrive pas à parser la date !
pouvez-vous ouvrir un ticket sur ? merci
Raphael Franchet
Expert Ametys
Offline
La suite de la discussion sur le ticket
Raphael Franchet
Expert Ametys
Offline
Le problème provient de java.
En java 6, l'arabe n'est pas supporté par la JVM de Sun/Oracle.
Il l'est en java 7.
De mon coté j'ai fait le test : j'ai reproduit le problème en java 6 ; et tout fonctionne en java 7 oracle.
Raphael Franchet
Expert Ametys
Offline
Pages: 1