[jboss-cvs] jboss-seam/src/main/org/jboss/seam/core ...

Gavin King gavin.king at jboss.com
Mon Oct 30 23:38:37 EST 2006


  User: gavin   
  Date: 06/10/30 23:38:37

  Modified:    src/main/org/jboss/seam/core    FacesMessages.java
                        Pages.java ResourceBundle.java
  Log:
  fix page bundle stuff
  use resource bundle messages in fwk
  
  Revision  Changes    Path
  1.20      +1 -1      jboss-seam/src/main/org/jboss/seam/core/FacesMessages.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: FacesMessages.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/core/FacesMessages.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -b -r1.19 -r1.20
  --- FacesMessages.java	13 Sep 2006 17:25:10 -0000	1.19
  +++ FacesMessages.java	31 Oct 2006 04:38:37 -0000	1.20
  @@ -213,7 +213,7 @@
      {
         String messageTemplate = defaultMessageTemplate;
         java.util.ResourceBundle resourceBundle = ResourceBundle.instance();
  -      if (resourceBundle!=null) 
  +      if ( resourceBundle!=null && key!=null ) 
         {
            try
            {
  
  
  
  1.39      +9 -1      jboss-seam/src/main/org/jboss/seam/core/Pages.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: Pages.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/core/Pages.java,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -b -r1.38 -r1.39
  --- Pages.java	31 Oct 2006 02:21:19 -0000	1.38
  +++ Pages.java	31 Oct 2006 04:38:37 -0000	1.39
  @@ -60,6 +60,11 @@
         Page(String viewId)
         {
            this.viewId = viewId;
  +         int loc = viewId.lastIndexOf('.');
  +         if ( loc>0 && viewId.startsWith("/") )
  +         {
  +            this.resourceBundleName = viewId.substring(1, loc);
  +         }
         }
         
         final String viewId;
  @@ -202,7 +207,10 @@
               }
               
               String bundle = page.attributeValue("bundle");
  -            entry.resourceBundleName = bundle==null ? viewId.substring(1, viewId.indexOf('.')) : bundle;
  +            if (bundle!=null)
  +            {
  +               entry.resourceBundleName = bundle;
  +            }
               
               List<Element> children = page.elements("param");
               for (Element param: children)
  
  
  
  1.17      +68 -56    jboss-seam/src/main/org/jboss/seam/core/ResourceBundle.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ResourceBundle.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/core/ResourceBundle.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -b -r1.16 -r1.17
  --- ResourceBundle.java	31 Oct 2006 02:21:19 -0000	1.16
  +++ ResourceBundle.java	31 Oct 2006 04:38:37 -0000	1.17
  @@ -81,18 +81,16 @@
      
      private void createUberBundle()
      {
  +      final List<java.util.ResourceBundle> littleBundles = new ArrayList<java.util.ResourceBundle>();
         if (bundleNames!=null)
         {
  -         
  -         final List<java.util.ResourceBundle> littleBundles = new ArrayList<java.util.ResourceBundle>(bundleNames.length);
            for (String bundleName: bundleNames)
            {
               java.util.ResourceBundle littleBundle = loadBundle(bundleName);
               if (littleBundle!=null) littleBundles.add(littleBundle);
            }
  +      }
            
  -         if ( !littleBundles.isEmpty() )
  -         {
               bundle = new java.util.ResourceBundle()
               {
         
  @@ -105,8 +103,19 @@
                  @Override
                  public Enumeration<String> getKeys()
                  {
  -                  Enumeration<String>[] enumerations = new Enumeration[ littleBundles.size() ];
  -                  for (int i=0; i<littleBundles.size(); i++)
  +            int size = littleBundles.size();
  +            java.util.ResourceBundle pageBundle = getPageResourceBundle();
  +            if (pageBundle!=null)
  +            {
  +               ++size;
  +            }
  +            Enumeration<String>[] enumerations = new Enumeration[ littleBundles.size() + 1 ];
  +            int i=0;
  +            if (pageBundle!=null)
  +            {
  +               enumerations[i++] = pageBundle.getKeys();
  +            }
  +            for (; i<littleBundles.size(); i++)
                     {
                        enumerations[i] = littleBundles.get(i).getKeys();
                     }
  @@ -116,16 +125,7 @@
                  @Override
                  protected Object handleGetObject(String key)
                  {
  -                  FacesContext facesContext = FacesContext.getCurrentInstance();
  -                  if (facesContext!=null)
  -                  {
  -                     UIViewRoot viewRoot = facesContext.getViewRoot();
  -                     if (viewRoot!=null)
  -                     {
  -                        String viewId = viewRoot.getViewId();
  -                        if (viewId!=null)
  -                        {
  -                           java.util.ResourceBundle pageBundle = Pages.instance().getResourceBundle(viewId);
  +            java.util.ResourceBundle pageBundle = getPageResourceBundle();
                              if (pageBundle!=null)
                              {
                                 try
  @@ -133,10 +133,6 @@
                                    return pageBundle.getObject(key);
                                 }
                                 catch (MissingResourceException mre) {}
  -                           
  -                           }
  -                        }
  -                     }
                     }
                     
                     for (java.util.ResourceBundle littleBundle: littleBundles)
  @@ -154,10 +150,26 @@
                     throw new MissingResourceException("Can't find resource in bundles: " + key, getClass().getName(), key );
                  }
                  
  -            };
  +         private java.util.ResourceBundle getPageResourceBundle()
  +         {
  +            FacesContext facesContext = FacesContext.getCurrentInstance();
  +            if (facesContext!=null)
  +            {
  +               UIViewRoot viewRoot = facesContext.getViewRoot();
  +               if (viewRoot!=null)
  +               {
  +                  String viewId = viewRoot.getViewId();
  +                  if (viewId!=null)
  +                  {
  +                     return Pages.instance().getResourceBundle(viewId);
  +                  }
            }
  -         
         }
  +            return null;
  +         }
  +         
  +      };
  +  
      }
   
      @Unwrap
  
  
  



More information about the jboss-cvs-commits mailing list