You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2009/08/28 03:00:44 UTC

svn commit: r808708 - /myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/ExtensionHandler.java

Author: lu4242
Date: Fri Aug 28 01:00:44 2009
New Revision: 808708

URL: http://svn.apache.org/viewvc?rev=808708&view=rev
Log:
MYFACES-2314 Implement <composite:extension> tag handler

Modified:
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/ExtensionHandler.java

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/ExtensionHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/ExtensionHandler.java?rev=808708&r1=808707&r2=808708&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/ExtensionHandler.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/ExtensionHandler.java Fri Aug 28 01:00:44 2009
@@ -25,6 +25,8 @@
 import javax.faces.view.facelets.TagConfig;
 import javax.faces.view.facelets.TagHandler;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.myfaces.buildtools.maven2.plugin.builder.annotation.JSFFaceletTag;
 
 /**
@@ -35,18 +37,36 @@
 public class ExtensionHandler extends TagHandler
 {
 
+    private static final Log log = LogFactory.getLog(ExtensionHandler.class);
+    
     public ExtensionHandler(TagConfig config)
     {
         super(config);
-        // TODO Auto-generated constructor stub
     }
 
     @Override
     public void apply(FaceletContext ctx, UIComponent parent)
             throws IOException
     {
-        // TODO Auto-generated method stub
+        // TODO: In theory the xml data inside this tag should be saved,
+        // but the spec does not say where and how this should be done.
+        // For now we just prevent execute any handler inside this tag.
+        // As soon JSR-276 is available, some behavior for this tag
+        // should be added.
+        CompositeComponentBeanInfo beanInfo = 
+            (CompositeComponentBeanInfo) parent.getAttributes()
+            .get(UIComponent.BEANINFO_KEY);
         
+        if (beanInfo == null)
+        {
+            if (log.isErrorEnabled())
+            {
+                log.error("Cannot found composite bean descriptor UIComponent.BEANINFO_KEY ");
+            }
+            return;
+        }
+        
+        //BeanDescriptor beanDescriptor = beanInfo.getBeanDescriptor();
     }
 
 }