You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by jw...@apache.org on 2007/12/21 20:33:15 UTC

svn commit: r606285 - in /myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal: renderkit/core/xhtml/jsLibs/ resource/

Author: jwaldman
Date: Fri Dec 21 11:33:14 2007
New Revision: 606285

URL: http://svn.apache.org/viewvc?rev=606285&view=rev
Log:
 TRINIDAD-879  NLS: Translation to always honor view locale not formatting locale
The fix is to not use the locale that is in the LocaleElements*.js file name for the
translation strings for this file. Instead, send a request parameter to the server
with the translation locale.
- add a new method protected String getExtraParameters to LibraryScriptlet and LocaleInfoScriptlet.java
- in LocaleInfoScriptlet.java, the getExtraParameters set "loc" to
arc.getLocaleContext().getTranslationLocale().toString();
- remove  protected String getLocaleString(FacesContext context) from TrTranslationsResourceLoader.java so that instead the superclass's method is called, which looks at the "loc" parameter for the locale
to use when getting the message bundle.

committed to trunk (also committed to trunk1.2.x)

Modified:
    myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LibraryScriptlet.java
    myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LocaleInfoScriptlet.java
    myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/resource/TrTranslationsResourceLoader.java

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LibraryScriptlet.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LibraryScriptlet.java?rev=606285&r1=606284&r2=606285&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LibraryScriptlet.java (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LibraryScriptlet.java Fri Dec 21 11:33:14 2007
@@ -126,7 +126,16 @@
 
     return libraryName;
   }
-
+  
+  /* return extra parameters, like "?loc=en".
+  /* returns null if no extra parameters */
+  protected String getExtraParameters(
+  FacesContext        context,
+  RenderingContext    arc)
+  {
+    return null;
+  }
+  
   protected String getLibraryURL(
     FacesContext        context,
     RenderingContext arc)
@@ -142,9 +151,12 @@
 
     if (_useLibraryVersions())
       libURL.append(_LIBRARY_VERSION);
-
-
+    
     libURL.append(".js");
+
+    String extraParams = getExtraParameters(context, arc);
+    if (extraParams != null)
+      libURL.append(extraParams);    
 
     return libURL.toString();
   }

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LocaleInfoScriptlet.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LocaleInfoScriptlet.java?rev=606285&r1=606284&r2=606285&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LocaleInfoScriptlet.java (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/jsLibs/LocaleInfoScriptlet.java Fri Dec 21 11:33:14 2007
@@ -134,6 +134,20 @@
     buffer.append(locStr);
     return buffer.toString();
   }
+  
+
+  /* return extra parameter "?loc=en", so that we can know what locale 
+   * the translations in LocaleElements should be in. */
+  protected String getExtraParameters(
+  FacesContext        context,
+  RenderingContext    arc)
+  {
+    String locStr = arc.getLocaleContext().getTranslationLocale().toString();
+
+    String extraParams = "?loc=" + locStr;
+
+    return extraParams;
+  }  
 
     protected Locale getFormattingLocale(RenderingContext arc) {
       return arc.getLocaleContext().getFormattingLocale();

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/resource/TrTranslationsResourceLoader.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/resource/TrTranslationsResourceLoader.java?rev=606285&r1=606284&r2=606285&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/resource/TrTranslationsResourceLoader.java (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/resource/TrTranslationsResourceLoader.java Fri Dec 21 11:33:14 2007
@@ -60,12 +60,6 @@
     return "org.apache.myfaces.trinidad.resource.MessageBundle";
   }
 
-  @Override
-  protected String getLocaleString(FacesContext context)
-  {
-    return CoreRenderKitResourceLoader.getLocale();
-  }
-
   // These translations do not go through the skin
   @Override
   protected Skin getSkin(FacesContext context)