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

Gavin King gavin.king at jboss.com
Wed Jul 18 10:37:30 EDT 2007


  User: gavin   
  Date: 07/07/18 10:37:30

  Modified:    src/main/org/jboss/seam/el  SeamELResolver.java
  Log:
  global imports JBSEAM-1693
  
  Revision  Changes    Path
  1.6       +26 -7     jboss-seam/src/main/org/jboss/seam/el/SeamELResolver.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: SeamELResolver.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/el/SeamELResolver.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -b -r1.5 -r1.6
  --- SeamELResolver.java	16 Jul 2007 12:57:59 -0000	1.5
  +++ SeamELResolver.java	18 Jul 2007 14:37:30 -0000	1.6
  @@ -10,7 +10,6 @@
   import javax.el.ELContext;
   import javax.el.ELResolver;
   
  -import org.jboss.seam.Component;
   import org.jboss.seam.Namespace;
   import org.jboss.seam.contexts.Context;
   import org.jboss.seam.contexts.Contexts;
  @@ -160,18 +159,38 @@
            return null;
         }
         
  -      String name = (String) property;
  -      Object result = Component.getInstance(name);
  -      if (result==null)
  +      String key = (String) property;
  +      Init init = Init.instance();
  +      
  +      //look for a component in the root namespace
  +      Object result = init.getRootNamespace().getComponentInstance(key);
  +      if (result!=null)
         {
  -         result = Init.instance().getRootNamespace().getChild(name);
  +         context.setPropertyResolved(true);
  +         return result;
         }
  +      else
  +      {
  +         //look for a component in the imported namespaces
  +         for ( Namespace ns: init.getGlobalImports() )
  +         {
  +            result = ns.getComponentInstance(key);
         if (result!=null)
         {
            context.setPropertyResolved(true);
  -      }
         return result;
      }
  +         }
  +      }
  +      
  +      //look for a namespace
  +      Namespace namespace = init.getRootNamespace().getChild(key);
  +      if (namespace!=null)
  +      {
  +         context.setPropertyResolved(true);
  +      }
  +      return namespace;
  +   }
   
      private Object resolveInNamespace(ELContext context, Object base, Object property)
      {
  
  
  



More information about the jboss-cvs-commits mailing list