<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: wcmqs multilingual in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275557#M228687</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have changed ApplicationDataInterceptor&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp; public boolean preHandle(…&lt;BR /&gt;…&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String lang = request.getPathInfo().split("/")[1];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WebSite webSite = webSiteService.getWebSite(serverName, serverPort, contextPath+"/"+lang);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String path = request.getPathInfo().substring(lang.length()+1);&lt;BR /&gt;…&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;but in webSiteService.getWebSite() call throws the following exception.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;java.lang.NoSuchMethodError: org.json.JSONTokener.&amp;lt;init&amp;gt;(Ljava/io/Reader;)V&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebScriptCallerImpl.getJsonObject(WebScriptCallerImpl.java:121)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.getWebsiteInfo(WebSiteServiceImpl.java:247)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.refreshWebsiteCache(WebSiteServiceImpl.java:187)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.getWebSiteCache(WebSiteServiceImpl.java:152)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.getWebSite(WebSiteServiceImpl.java:119)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.gestorweb.site.client.interceptor.ApplicationDataInterceptor.preHandle(ApplicationDataInterceptor.java:42)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:761)&lt;BR /&gt;…&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;The json response to GET /alfresco/service/api/websiteinfo?websiteid=workspace%3A%2F%2FSpacesStore%2F0e1c90ad-d393-4379-8643-76d7227617d2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; data: {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "rootsectionid" : "workspace://SpacesStore/83242220-1b1c-4843-87ba-b5ad82adf833",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "feedbackfolderid" : "workspace://SpacesStore/06c64b2d-e476-4a04-a92f-1c4784f68408",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;from where the last comma?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It's an error on server side?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;any ideas?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 24 Jan 2011 17:20:35 GMT</pubDate>
    <dc:creator>rmorant</dc:creator>
    <dc:date>2011-01-24T17:20:35Z</dc:date>
    <item>
      <title>wcmqs multilingual</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275554#M228684</link>
      <description>I'm thinking the best way to do a multilingual site based in wcmqs.Firstable i translated the alfresco/messages/common.properties to I10n named files, and was okay.But for the documents… i was reading http://wiki.alfresco.com/wiki/Multilingual_Document_Support and i'm not sure to understand it.Are t</description>
      <pubDate>Tue, 04 Jan 2011 18:03:55 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275554#M228684</guid>
      <dc:creator>rmorant</dc:creator>
      <dc:date>2011-01-04T18:03:55Z</dc:date>
    </item>
    <item>
      <title>Re: wcmqs multilingual</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275555#M228685</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Funnily enough, this is a topic that we're talking about at Alfresco now with a view to providing an out-of-the-box solution in a future release. There is always a slight problem with multi-lingual sites, in that different people want to manage them in different ways. Some want to manage the content for each language as a separate site (different site structure), while others prefer to have a single site structure and have the appropriate translation selected at request time. As you say, in the first case you'd want to include the locale in the site-selection logic. In the second case you'd want to use the locale in the asset-selection logic.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The simplest approach if you wish to tackle this yourself is the one where you have a different website structure in the repo for each language. In this case you could perhaps use sub-domains to select the site you want:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp; es.example.com&lt;BR /&gt;&amp;nbsp; fr.example.com&lt;BR /&gt;&amp;nbsp; en.example.com&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;Another possibility worth considering is replacing the ApplicationDataInterceptor with your own implementation that takes the first segment of the requested path (the bit after "wcmqs" in the default installation) and appends it to the contextPath before calling websiteService.getWebSite(…). Just to clarify that a little, if a request comes in for:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;A href="http://www.example.com/wcmqs/fr/news/global/article1" rel="nofollow noopener noreferrer"&gt;http://www.example.com/wcmqs/fr/news/global/article1&lt;/A&gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;then the call to getWebSite has the arguments: "&lt;/SPAN&gt;&lt;A href="http://www.example.com" rel="nofollow noopener noreferrer"&gt;www.example.com&lt;/A&gt;&lt;SPAN&gt;", 80, and "/wcmqs/fr"&amp;nbsp; (note the addition of "/fr" on the context path)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Similarly, the "/fr" is then stripped from the path that is subsequently passed into the call to webSite.getAssetByPath (so this method is passed "/news/global/article1"). It would be sensible to store the selected locale as a thread local too so that it can be used to select static text from the appropriate message bundle and can also be used by a tweaked implementation of the UrlUtils interface to produce outbound URLs in the correct format.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I don't know if that's a step too far for you right now, but, if so, it is something that we will address as early as we can.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jan 2011 13:16:32 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275555#M228685</guid>
      <dc:creator>bremmington</dc:creator>
      <dc:date>2011-01-05T13:16:32Z</dc:date>
    </item>
    <item>
      <title>Re: wcmqs multilingual</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275556#M228686</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thank you.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I think the &amp;lt;contextPath&amp;gt;/&amp;lt;lang&amp;gt; solution it's ok for this application because the content can be different for each location while the desing don't change.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In other service like a product catalog should be at asset level the selection logic.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I need both, i will follow your development.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jan 2011 10:04:33 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275556#M228686</guid>
      <dc:creator>rmorant</dc:creator>
      <dc:date>2011-01-07T10:04:33Z</dc:date>
    </item>
    <item>
      <title>Re: wcmqs multilingual</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275557#M228687</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have changed ApplicationDataInterceptor&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp; public boolean preHandle(…&lt;BR /&gt;…&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String lang = request.getPathInfo().split("/")[1];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WebSite webSite = webSiteService.getWebSite(serverName, serverPort, contextPath+"/"+lang);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String path = request.getPathInfo().substring(lang.length()+1);&lt;BR /&gt;…&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;but in webSiteService.getWebSite() call throws the following exception.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;java.lang.NoSuchMethodError: org.json.JSONTokener.&amp;lt;init&amp;gt;(Ljava/io/Reader;)V&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebScriptCallerImpl.getJsonObject(WebScriptCallerImpl.java:121)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.getWebsiteInfo(WebSiteServiceImpl.java:247)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.refreshWebsiteCache(WebSiteServiceImpl.java:187)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.getWebSiteCache(WebSiteServiceImpl.java:152)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.alfresco.wcm.client.impl.WebSiteServiceImpl.getWebSite(WebSiteServiceImpl.java:119)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.gestorweb.site.client.interceptor.ApplicationDataInterceptor.preHandle(ApplicationDataInterceptor.java:42)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:761)&lt;BR /&gt;…&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;The json response to GET /alfresco/service/api/websiteinfo?websiteid=workspace%3A%2F%2FSpacesStore%2F0e1c90ad-d393-4379-8643-76d7227617d2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; data: {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "rootsectionid" : "workspace://SpacesStore/83242220-1b1c-4843-87ba-b5ad82adf833",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "feedbackfolderid" : "workspace://SpacesStore/06c64b2d-e476-4a04-a92f-1c4784f68408",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;from where the last comma?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It's an error on server side?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;any ideas?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Jan 2011 17:20:35 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275557#M228687</guid>
      <dc:creator>rmorant</dc:creator>
      <dc:date>2011-01-24T17:20:35Z</dc:date>
    </item>
    <item>
      <title>Re: wcmqs multilingual</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275558#M228688</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The NoSuchMethodError suggests that you may be linking to the incorrect json library (json.jar) in your webapp. Although the comma you mention is unnecessary, it is also not harmful. Is there a possibility that you have pulled in a different json.jar from the one we use? That would be my best guess based on what you've said.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Jan 2011 08:19:50 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/wcmqs-multilingual/m-p/275558#M228688</guid>
      <dc:creator>bremmington</dc:creator>
      <dc:date>2011-01-25T08:19:50Z</dc:date>
    </item>
  </channel>
</rss>

