[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