You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2012/11/23 21:11:43 UTC

svn commit: r1413043 - in /myfaces/tobago/trunk: tobago-core/ tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ tobago-extension/tobago-taglib-extension/ tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/

Author: lofwyr
Date: Fri Nov 23 20:11:38 2012
New Revision: 1413043

URL: http://svn.apache.org/viewvc?rev=1413043&view=rev
Log:
TOBAGO-1220: Build with profile generate-tag-reference fails

Modified:
    myfaces/tobago/trunk/tobago-core/pom.xml
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/AttributeTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ConverterTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/DataAttributeTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/FileItemValidatorTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/GridLayoutConstraintTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/LoadBundleTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/PopupReferenceTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ResetInputActionListenerTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/SubmittedValueLengthValidatorTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/TabChangeListenerTag.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/package-info.java
    myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/pom.xml
    myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/TaglibAnnotationVisitor.java

Modified: myfaces/tobago/trunk/tobago-core/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/pom.xml?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/pom.xml (original)
+++ myfaces/tobago/trunk/tobago-core/pom.xml Fri Nov 23 20:11:38 2012
@@ -394,15 +394,14 @@
             <executions>
               <execution>
                 <id>tobago-doc</id>
-                <goals><goal>execute</goal></goals>
+                <goals><goal>process</goal></goals>
                 <configuration>
                   <outputFiles>
                     <outputFile>org/apache/myfaces/tobago/internal/taglib/component/tobago.xml</outputFile>
                     <outputFile>org/apache/myfaces/tobago/internal/taglib/extension/tobago-extension.xml</outputFile>
                   </outputFiles>
-                  <generated>${project.build.directory}/doc</generated>
+                  <sourceOutputDirectory>${project.build.directory}/doc</sourceOutputDirectory>
                   <factory>org.apache.myfaces.tobago.apt.TobagoAnnotationProcessorFactory</factory>
-                  <nocompile>true</nocompile>
                   <encoding>${maven.compile.encoding}</encoding>
                 </configuration>
               </execution>

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/AttributeTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/AttributeTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/AttributeTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/AttributeTag.java Fri Nov 23 20:11:38 2012
@@ -28,8 +28,10 @@ import org.apache.myfaces.tobago.compone
 import org.apache.myfaces.tobago.component.SupportsRenderedPartially;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 
+import javax.el.ValueExpression;
 import javax.faces.component.UIComponent;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -41,29 +43,34 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.AttributeTag")
 public abstract class AttributeTag extends TagSupport {
 
-  public abstract boolean isNameLiteral();
-
-  public abstract Object getNameAsBindingOrExpression();
+  private static final long serialVersionUID = 1L;
 
   /**
    * The name of the attribute in the parent component.
    */
-  @TagAttribute(required = true, name = "name")
-  public abstract String getNameValue();
+  @TagAttribute(required = true, name = "name", type = "java.lang.String")
+  public abstract void setName(ValueExpression name);
 
-  public abstract String getNameExpression();
+  public abstract String getNameValue();
 
+  public abstract boolean isNameLiteral();
 
-  public abstract boolean isValueLiteral();
+  public abstract Object getNameAsBindingOrExpression();
 
-  public abstract Object getValueAsBindingOrExpression();
+  public abstract String getNameExpression();
 
   /**
    * The value of the attribute in the parent component.
    */
-  @TagAttribute(required = true, name = "value")
+  @TagAttribute(required = true, name = "value", type = "java.lang.String")
+  public abstract void setValue(ValueExpression value);
+
   public abstract String getValueValue();
 
+  public abstract boolean isValueLiteral();
+
+  public abstract Object getValueAsBindingOrExpression();
+
   public abstract String getValueExpression();
 
   /**
@@ -83,7 +90,7 @@ public abstract class AttributeTag exten
    * "valueIfSet" set the attribute only if the value is set.
    */
   @TagAttribute(name = "mode")
-  public void setMode(String mode) {
+  public void setMode(ValueExpression mode) {
     throw new RuntimeException("The mode is only available when using Facelets, not with JSP.");
   }
   
@@ -93,8 +100,8 @@ public abstract class AttributeTag exten
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ConverterTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ConverterTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ConverterTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ConverterTag.java Fri Nov 23 20:11:38 2012
@@ -26,11 +26,13 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.compat.FacesUtils;
 import org.apache.myfaces.tobago.component.Attributes;
 
+import javax.el.ValueExpression;
 import javax.faces.component.UIComponent;
 import javax.faces.component.ValueHolder;
 import javax.faces.context.FacesContext;
 import javax.faces.convert.Converter;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -46,12 +48,12 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.ConverterTag")
 public abstract class ConverterTag extends TagSupport {
 
-  private static final long serialVersionUID = 8565994799165107984L;
+  private static final long serialVersionUID = 1L;
 
   /**
    * Create a new instance of the specified {@link javax.faces.convert.Converter}
    * class, and register it with the {@link javax.faces.component.UIComponent} instance associated
-   * with our most immediately surrounding {@link javax.faces.webapp.UIComponentTag} instance, if
+   * with our most immediately surrounding {@link javax.faces.webapp.UIComponentELTag} instance, if
    * the {@link javax.faces.component.UIComponent} instance was created by this execution of the
    * containing JSP page.
    *
@@ -60,8 +62,8 @@ public abstract class ConverterTag exten
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");
@@ -125,27 +127,30 @@ public abstract class ConverterTag exten
    * The converterId of a registered converter.
    *
    */
-  @TagAttribute(name = "converterId")
+  @TagAttribute(name = "converterId", type = "java.lang.String")
+  public abstract void setConverterId(ValueExpression converterId);
+
   public abstract String getConverterIdValue();
 
-  public abstract Object getConverterIdAsBindingOrExpression();
+  public abstract boolean isConverterIdSet();
 
   public abstract boolean isConverterIdLiteral();
 
-  public abstract boolean isConverterIdSet();
-
+  public abstract Object getConverterIdAsBindingOrExpression();
 
   /**
    * The value binding expression to a converter.
    *
    */
-  @TagAttribute(name = "binding")
-  public abstract String getBindingValue();
+  @TagAttribute(name = "binding", type = "javax.faces.convert.Converter")
+  public abstract void setBinding(ValueExpression binding);
 
-  public abstract Object getBindingAsBindingOrExpression();
+  public abstract Converter getBindingValue();
+
+  public abstract boolean isBindingSet();
 
   public abstract boolean isBindingLiteral();
 
-  public abstract boolean isBindingSet();
+  public abstract Object getBindingAsBindingOrExpression();
 
 }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/DataAttributeTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/DataAttributeTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/DataAttributeTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/DataAttributeTag.java Fri Nov 23 20:11:38 2012
@@ -25,8 +25,10 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.apt.annotation.TagGeneration;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 
+import javax.el.ValueExpression;
 import javax.faces.component.UIComponent;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -42,33 +44,38 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.DataAttributeTag")
 public abstract class DataAttributeTag extends TagSupport {
 
-  public abstract boolean isNameLiteral();
-
-  public abstract Object getNameAsBindingOrExpression();
+  private static final long serialVersionUID = 1L;
 
   /**
    * PRELIMINARY - SUBJECT TO CHANGE
    *
    * The name of the attribute in the parent component.
    */
-  @TagAttribute(required = true, name = "name")
-  public abstract String getNameValue();
+  @TagAttribute(required = true, name = "name", type = "java.lang.String")
+  public abstract void setName(ValueExpression name);
 
-  public abstract String getNameExpression();
+  public abstract String getNameValue();
 
+  public abstract boolean isNameLiteral();
 
-  public abstract boolean isValueLiteral();
+  public abstract Object getNameAsBindingOrExpression();
 
-  public abstract Object getValueAsBindingOrExpression();
+  public abstract String getNameExpression();
 
   /**
    * PRELIMINARY - SUBJECT TO CHANGE
    *
    * The value of the attribute in the parent component.
    */
-  @TagAttribute(required = true, name = "value")
+  @TagAttribute(required = true, name = "value", type = "java.lang.String")
+  public abstract void setValue(ValueExpression value);
+
   public abstract String getValueValue();
 
+  public abstract boolean isValueLiteral();
+
+  public abstract Object getValueAsBindingOrExpression();
+
   public abstract String getValueExpression();
 
   /**
@@ -77,8 +84,8 @@ public abstract class DataAttributeTag e
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    final UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/FileItemValidatorTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/FileItemValidatorTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/FileItemValidatorTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/FileItemValidatorTag.java Fri Nov 23 20:11:38 2012
@@ -25,6 +25,7 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.validator.FileItemValidator;
 
+import javax.el.ValueExpression;
 import javax.faces.validator.Validator;
 import javax.faces.webapp.ValidatorTag;
 import javax.servlet.jsp.JspException;
@@ -42,14 +43,18 @@ import javax.servlet.jsp.JspException;
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.FileItemValidatorTag")
 public abstract class FileItemValidatorTag extends ValidatorTag {
 
-  private static final long serialVersionUID = -1461244883146997440L;
+  private static final long serialVersionUID = 1L;
 
-  @TagAttribute(name = "maxSize")
-  public abstract String getMaxSizeValue();
+  @TagAttribute(name = "maxSize", type = "java.lang.Integer")
+  public abstract void setMaxSize(ValueExpression maxSize);
+
+  public abstract Integer getMaxSizeValue();
 
   public abstract boolean isMaxSizeSet();
 
-  @TagAttribute(name = "contentType")
+  @TagAttribute(name = "contentType", type = "java.lang.String")
+  public abstract void setContentType(ValueExpression contentType);
+
   public abstract String getContentTypeValue();
 
   public abstract boolean isContentTypeSet();
@@ -60,7 +65,7 @@ public abstract class FileItemValidatorT
 
     if (isMaxSizeSet()) {
       try {
-        validator.setMaxSize(Integer.parseInt(getMaxSizeValue()));
+        validator.setMaxSize(getMaxSizeValue());
       } catch (NumberFormatException e) {
         // ignore
       }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/GridLayoutConstraintTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/GridLayoutConstraintTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/GridLayoutConstraintTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/GridLayoutConstraintTag.java Fri Nov 23 20:11:38 2012
@@ -33,8 +33,10 @@ import org.apache.myfaces.tobago.layout.
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import javax.el.ValueExpression;
 import javax.faces.component.UIComponent;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -45,7 +47,7 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.GridLayoutConstraintTag")
 public abstract class GridLayoutConstraintTag extends TagSupport {
 
-  private static final long serialVersionUID = 2L;
+  private static final long serialVersionUID = 3L;
 
   private static final Logger LOG = LoggerFactory.getLogger(GridLayoutConstraintTag.class);
 
@@ -54,8 +56,8 @@ public abstract class GridLayoutConstrai
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");
@@ -84,7 +86,7 @@ public abstract class GridLayoutConstrai
 
     if (component instanceof LayoutComponent && isColumnSpanSet()) {
       if (isColumnSpanLiteral()) {
-        ((LayoutComponent) component).setColumnSpan(Integer.valueOf(getColumnSpanValue()));
+        ((LayoutComponent) component).setColumnSpan(getColumnSpanValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.COLUMN_SPAN, getColumnSpanAsBindingOrExpression());
       }
@@ -92,7 +94,7 @@ public abstract class GridLayoutConstrai
 
     if (component instanceof LayoutComponent && isRowSpanSet()) {
       if (isRowSpanLiteral()) {
-        ((LayoutComponent) component).setRowSpan(Integer.valueOf(getRowSpanValue()));
+        ((LayoutComponent) component).setRowSpan(getRowSpanValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.ROW_SPAN, getRowSpanAsBindingOrExpression());
       }
@@ -100,8 +102,7 @@ public abstract class GridLayoutConstrai
 
     if (isWidthSet()) {
       if (isWidthLiteral()) {
-        ((LayoutBase) component).setWidth(Measure.valueOf(getWidthValue()));
-//        ((LayoutBase) component).setWidth(Measure.valueOf(getWidthExpression()));
+        ((LayoutBase) component).setWidth(getWidthValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.WIDTH, getWidthAsBindingOrExpression());
       }
@@ -109,8 +110,7 @@ public abstract class GridLayoutConstrai
 
     if (isHeightSet()) {
       if (isHeightLiteral()) {
-        ((LayoutBase) component).setHeight(Measure.valueOf(getHeightValue()));
-//        ((LayoutBase) component).setHeight(Measure.valueOf(getHeightExpression()));
+        ((LayoutBase) component).setHeight(getHeightValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.HEIGHT, getHeightAsBindingOrExpression());
       }
@@ -118,7 +118,7 @@ public abstract class GridLayoutConstrai
 
     if (isMinimumWidthSet()) {
       if (isMinimumWidthLiteral()) {
-        ((LayoutBase) component).setMinimumWidth(Measure.valueOf(getMinimumWidthValue()));
+        ((LayoutBase) component).setMinimumWidth(getMinimumWidthValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MINIMUM_WIDTH, getMinimumWidthAsBindingOrExpression());
       }
@@ -126,7 +126,7 @@ public abstract class GridLayoutConstrai
 
     if (isMinimumHeightSet()) {
       if (isMinimumHeightLiteral()) {
-        ((LayoutBase) component).setMinimumHeight(Measure.valueOf(getMinimumHeightValue()));
+        ((LayoutBase) component).setMinimumHeight(getMinimumHeightValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MINIMUM_WIDTH, getMinimumHeightAsBindingOrExpression());
       }
@@ -134,7 +134,7 @@ public abstract class GridLayoutConstrai
 
     if (isPreferredWidthSet()) {
       if (isPreferredWidthLiteral()) {
-        ((LayoutBase) component).setPreferredWidth(Measure.valueOf(getPreferredWidthValue()));
+        ((LayoutBase) component).setPreferredWidth(getPreferredWidthValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.PREFERRED_WIDTH,
             getPreferredWidthAsBindingOrExpression());
@@ -143,7 +143,7 @@ public abstract class GridLayoutConstrai
 
     if (isPreferredHeightSet()) {
       if (isPreferredHeightLiteral()) {
-        ((LayoutBase) component).setPreferredHeight(Measure.valueOf(getPreferredHeightValue()));
+        ((LayoutBase) component).setPreferredHeight(getPreferredHeightValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.PREFERRED_WIDTH,
             getPreferredHeightAsBindingOrExpression());
@@ -152,7 +152,7 @@ public abstract class GridLayoutConstrai
 
     if (isMaximumWidthSet()) {
       if (isMaximumWidthLiteral()) {
-        ((LayoutBase) component).setMaximumWidth(Measure.valueOf(getMaximumWidthValue()));
+        ((LayoutBase) component).setMaximumWidth(getMaximumWidthValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MAXIMUM_WIDTH, getMaximumWidthAsBindingOrExpression());
       }
@@ -160,7 +160,7 @@ public abstract class GridLayoutConstrai
 
     if (isMaximumHeightSet()) {
       if (isMaximumHeightLiteral()) {
-        ((LayoutBase) component).setMaximumHeight(Measure.valueOf(getMaximumHeightValue()));
+        ((LayoutBase) component).setMaximumHeight(getMaximumHeightValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MAXIMUM_WIDTH, getMaximumHeightAsBindingOrExpression());
       }
@@ -168,7 +168,7 @@ public abstract class GridLayoutConstrai
 
     if (isMarginLeftSet()) {
       if (isMarginLeftLiteral()) {
-        ((LayoutBase) component).setMarginLeft(Measure.valueOf(getMarginLeftValue()));
+        ((LayoutBase) component).setMarginLeft(getMarginLeftValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MARGIN_LEFT, getMarginLeftAsBindingOrExpression());
       }
@@ -176,14 +176,14 @@ public abstract class GridLayoutConstrai
 
     if (isMarginRightSet()) {
       if (isMarginRightLiteral()) {
-        ((LayoutBase) component).setMarginRight(Measure.valueOf(getMarginRightValue()));
+        ((LayoutBase) component).setMarginRight(getMarginRightValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MARGIN_RIGHT, getMarginRightAsBindingOrExpression());
       }
     }
     if (isMarginTopSet()) {
       if (isMarginTopLiteral()) {
-        ((LayoutBase) component).setMarginTop(Measure.valueOf(getMarginTopValue()));
+        ((LayoutBase) component).setMarginTop(getMarginTopValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MARGIN_TOP, getMarginTopAsBindingOrExpression());
       }
@@ -191,7 +191,7 @@ public abstract class GridLayoutConstrai
 
     if (isMarginBottomSet()) {
       if (isMarginBottomLiteral()) {
-        ((LayoutBase) component).setMarginBottom(Measure.valueOf(getMarginBottomValue()));
+        ((LayoutBase) component).setMarginBottom(getMarginBottomValue());
       } else {
         FacesUtils.setBindingOrExpression(component, Attributes.MARGIN_BOTTOM, getMarginBottomAsBindingOrExpression());
       }
@@ -200,7 +200,7 @@ public abstract class GridLayoutConstrai
     if (isBorderLeftSet()) {
       if (component instanceof LayoutContainer) {
         if (isBorderLeftLiteral()) {
-          ((LayoutContainer) component).setBorderLeft(Measure.valueOf(getBorderLeftValue()));
+          ((LayoutContainer) component).setBorderLeft(getBorderLeftValue());
         } else {
           FacesUtils.setBindingOrExpression(component, Attributes.BORDER_LEFT, getBorderLeftAsBindingOrExpression());
         }
@@ -212,7 +212,7 @@ public abstract class GridLayoutConstrai
     if (isBorderRightSet()) {
       if (component instanceof LayoutContainer) {
         if (isBorderRightLiteral()) {
-          ((LayoutContainer) component).setBorderRight(Measure.valueOf(getBorderRightValue()));
+          ((LayoutContainer) component).setBorderRight(getBorderRightValue());
         } else {
           FacesUtils.setBindingOrExpression(component, Attributes.BORDER_RIGHT, getBorderRightAsBindingOrExpression());
         }
@@ -223,7 +223,7 @@ public abstract class GridLayoutConstrai
     if (isBorderTopSet()) {
       if (component instanceof LayoutContainer) {
         if (isBorderTopLiteral()) {
-          ((LayoutContainer) component).setBorderTop(Measure.valueOf(getBorderTopValue()));
+          ((LayoutContainer) component).setBorderTop(getBorderTopValue());
         } else {
           FacesUtils.setBindingOrExpression(component, Attributes.BORDER_TOP, getBorderTopAsBindingOrExpression());
         }
@@ -235,7 +235,7 @@ public abstract class GridLayoutConstrai
     if (isBorderBottomSet()) {
       if (component instanceof LayoutContainer) {
         if (isBorderBottomLiteral()) {
-          ((LayoutContainer) component).setBorderBottom(Measure.valueOf(getBorderBottomValue()));
+          ((LayoutContainer) component).setBorderBottom(getBorderBottomValue());
         } else {
           FacesUtils
               .setBindingOrExpression(component, Attributes.BORDER_BOTTOM, getBorderBottomAsBindingOrExpression());
@@ -248,7 +248,7 @@ public abstract class GridLayoutConstrai
     if (isPaddingLeftSet()) {
       if (component instanceof LayoutContainer) {
         if (isPaddingLeftLiteral()) {
-          ((LayoutContainer) component).setPaddingLeft(Measure.valueOf(getPaddingLeftValue()));
+          ((LayoutContainer) component).setPaddingLeft(getPaddingLeftValue());
         } else {
           FacesUtils.setBindingOrExpression(component, Attributes.PADDING_LEFT, getPaddingLeftAsBindingOrExpression());
         }
@@ -260,7 +260,7 @@ public abstract class GridLayoutConstrai
     if (isPaddingRightSet()) {
       if (component instanceof LayoutContainer) {
         if (isPaddingRightLiteral()) {
-          ((LayoutContainer) component).setPaddingRight(Measure.valueOf(getPaddingRightValue()));
+          ((LayoutContainer) component).setPaddingRight(getPaddingRightValue());
         } else {
           FacesUtils.setBindingOrExpression(
               component, Attributes.PADDING_RIGHT, getPaddingRightAsBindingOrExpression());
@@ -272,7 +272,7 @@ public abstract class GridLayoutConstrai
     if (isPaddingTopSet()) {
       if (component instanceof LayoutContainer) {
         if (isPaddingTopLiteral()) {
-          ((LayoutContainer) component).setPaddingTop(Measure.valueOf(getPaddingTopValue()));
+          ((LayoutContainer) component).setPaddingTop(getPaddingTopValue());
         } else {
           FacesUtils.setBindingOrExpression(component, Attributes.PADDING_TOP, getPaddingTopAsBindingOrExpression());
         }
@@ -284,7 +284,7 @@ public abstract class GridLayoutConstrai
     if (isPaddingBottomSet()) {
       if (component instanceof LayoutContainer) {
         if (isPaddingBottomLiteral()) {
-          ((LayoutContainer) component).setPaddingBottom(Measure.valueOf(getPaddingBottomValue()));
+          ((LayoutContainer) component).setPaddingBottom(getPaddingBottomValue());
         } else {
           FacesUtils
               .setBindingOrExpression(component, Attributes.PADDING_BOTTOM, getPaddingBottomAsBindingOrExpression());
@@ -300,8 +300,10 @@ public abstract class GridLayoutConstrai
   /**
    * The number of horizontal cells this component should use.
    */
-  @TagAttribute(name = "columnSpan")
-  public abstract String getColumnSpanValue();
+  @TagAttribute(name = "columnSpan", type = "java.lang.Integer")
+  public abstract void setColumnSpan(ValueExpression columnSpan);
+
+  public abstract Integer getColumnSpanValue();
 
   public abstract boolean isColumnSpanSet();
 
@@ -312,8 +314,10 @@ public abstract class GridLayoutConstrai
   /**
    * The number of vertical cells this component should use.
    */
-  @TagAttribute(name = "rowSpan")
-  public abstract String getRowSpanValue();
+  @TagAttribute(name = "rowSpan", type = "java.lang.Integer")
+  public abstract void setRowSpan(ValueExpression rowSpan);
+
+  public abstract Integer getRowSpanValue();
 
   public abstract boolean isRowSpanSet();
 
@@ -321,13 +325,14 @@ public abstract class GridLayoutConstrai
 
   public abstract Object getRowSpanAsBindingOrExpression();
 
-
   /**
    * The width for this component.
    */
-  @TagAttribute(name = "width")
+  @TagAttribute(name = "width", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getWidthValue();
+  public abstract void setWidth(ValueExpression width);
+
+  public abstract Measure getWidthValue();
 
   public abstract boolean isWidthSet();
 
@@ -338,9 +343,11 @@ public abstract class GridLayoutConstrai
   /**
    * The height for this component.
    */
-  @TagAttribute(name = "height")
+  @TagAttribute(name = "height", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getHeightValue();
+  public abstract void setHeight(ValueExpression height);
+
+  public abstract Measure getHeightValue();
 
   public abstract boolean isHeightSet();
 
@@ -351,9 +358,11 @@ public abstract class GridLayoutConstrai
   /**
    * The minimum width for this component.
    */
-  @TagAttribute(name = "minimumWidth")
+  @TagAttribute(name = "minimumWidth", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMinimumWidthValue();
+  public abstract void setMinimumWidth(ValueExpression minimumWidth);
+
+  public abstract Measure getMinimumWidthValue();
 
   public abstract boolean isMinimumWidthSet();
 
@@ -364,9 +373,11 @@ public abstract class GridLayoutConstrai
   /**
    * The minimum height for this component.
    */
-  @TagAttribute(name = "minimumHeight")
+  @TagAttribute(name = "minimumHeight", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMinimumHeightValue();
+  public abstract void setMinimumHeight(ValueExpression minimumHeight);
+
+  public abstract Measure getMinimumHeightValue();
 
   public abstract boolean isMinimumHeightSet();
 
@@ -377,9 +388,11 @@ public abstract class GridLayoutConstrai
   /**
    * The preferred width for this component.
    */
-  @TagAttribute(name = "preferredWidth")
+  @TagAttribute(name = "preferredWidth", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getPreferredWidthValue();
+  public abstract void setPreferredWidth(ValueExpression preferredWidth);
+
+  public abstract Measure getPreferredWidthValue();
 
   public abstract boolean isPreferredWidthSet();
 
@@ -390,9 +403,11 @@ public abstract class GridLayoutConstrai
   /**
    * The preferred height for this component.
    */
-  @TagAttribute(name = "preferredHeight")
+  @TagAttribute(name = "preferredHeight", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getPreferredHeightValue();
+  public abstract void setPreferredHeight(ValueExpression preferredHeight);
+
+  public abstract Measure getPreferredHeightValue();
 
   public abstract boolean isPreferredHeightSet();
 
@@ -403,9 +418,11 @@ public abstract class GridLayoutConstrai
   /**
    * The maximum width for this component.
    */
-  @TagAttribute(name = "maximumWidth")
+  @TagAttribute(name = "maximumWidth", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMaximumWidthValue();
+  public abstract void setMaximumWidth(ValueExpression maximumWidth);
+
+  public abstract Measure getMaximumWidthValue();
 
   public abstract boolean isMaximumWidthSet();
 
@@ -416,9 +433,11 @@ public abstract class GridLayoutConstrai
   /**
    * The maximum height for this component.
    */
-  @TagAttribute(name = "maximumHeight")
+  @TagAttribute(name = "maximumHeight", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMaximumHeightValue();
+  public abstract void setMaximumHeight(ValueExpression maximumHeight);
+
+  public abstract Measure getMaximumHeightValue();
 
   public abstract boolean isMaximumHeightSet();
 
@@ -429,9 +448,11 @@ public abstract class GridLayoutConstrai
   /**
    * The left margin for this component.
    */
-  @TagAttribute(name = "marginLeft")
+  @TagAttribute(name = "marginLeft", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMarginLeftValue();
+  public abstract void setMarginLeft(ValueExpression marginLeft);
+
+  public abstract Measure getMarginLeftValue();
 
   public abstract boolean isMarginLeftSet();
 
@@ -442,9 +463,11 @@ public abstract class GridLayoutConstrai
   /**
    * The right margin for this component.
    */
-  @TagAttribute(name = "marginRight")
+  @TagAttribute(name = "marginRight", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMarginRightValue();
+  public abstract void setMarginRight(ValueExpression marginLeft);
+
+  public abstract Measure getMarginRightValue();
 
   public abstract boolean isMarginRightSet();
 
@@ -455,9 +478,11 @@ public abstract class GridLayoutConstrai
   /**
    * The top margin for this component.
    */
-  @TagAttribute(name = "marginTop")
+  @TagAttribute(name = "marginTop", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMarginTopValue();
+  public abstract void setMarginTop(ValueExpression marginTop);
+
+  public abstract Measure getMarginTopValue();
 
   public abstract boolean isMarginTopSet();
 
@@ -468,9 +493,11 @@ public abstract class GridLayoutConstrai
   /**
    * The bottom margin for this component.
    */
-  @TagAttribute(name = "marginBottom")
+  @TagAttribute(name = "marginBottom", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getMarginBottomValue();
+  public abstract void setMarginBottom(ValueExpression marginBottom);
+
+  public abstract Measure getMarginBottomValue();
 
   public abstract boolean isMarginBottomSet();
 
@@ -481,9 +508,11 @@ public abstract class GridLayoutConstrai
   /**
    * The left border area for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "borderLeft")
+  @TagAttribute(name = "borderLeft", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getBorderLeftValue();
+  public abstract void setBorderLeft(ValueExpression borderLeft);
+
+  public abstract Measure getBorderLeftValue();
 
   public abstract boolean isBorderLeftSet();
 
@@ -494,9 +523,11 @@ public abstract class GridLayoutConstrai
   /**
    * The right border area for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "borderRight")
+  @TagAttribute(name = "borderRight", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getBorderRightValue();
+  public abstract void setBorderRight(ValueExpression borderRight);
+
+  public abstract Measure getBorderRightValue();
 
   public abstract boolean isBorderRightSet();
 
@@ -507,9 +538,11 @@ public abstract class GridLayoutConstrai
   /**
    * The top border area for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "borderTop")
+  @TagAttribute(name = "borderTop", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getBorderTopValue();
+  public abstract void setBorderTop(ValueExpression borderTop);
+
+  public abstract Measure getBorderTopValue();
 
   public abstract boolean isBorderTopSet();
 
@@ -520,9 +553,11 @@ public abstract class GridLayoutConstrai
   /**
    * The bottom border area for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "borderBottom")
+  @TagAttribute(name = "borderBottom", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getBorderBottomValue();
+  public abstract void setBorderBottom(ValueExpression borderBottom);
+
+  public abstract Measure getBorderBottomValue();
 
   public abstract boolean isBorderBottomSet();
 
@@ -533,9 +568,11 @@ public abstract class GridLayoutConstrai
   /**
    * The left padding for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "paddingLeft")
+  @TagAttribute(name = "paddingLeft", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getPaddingLeftValue();
+  public abstract void setPaddingLeft(ValueExpression paddingLeft);
+
+  public abstract Measure getPaddingLeftValue();
 
   public abstract boolean isPaddingLeftSet();
 
@@ -546,9 +583,11 @@ public abstract class GridLayoutConstrai
   /**
    * The right padding for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "paddingRight")
+  @TagAttribute(name = "paddingRight", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getPaddingRightValue();
+  public abstract void setPaddingRight(ValueExpression paddingRight);
+
+  public abstract Measure getPaddingRightValue();
 
   public abstract boolean isPaddingRightSet();
 
@@ -559,9 +598,11 @@ public abstract class GridLayoutConstrai
   /**
    * The top padding for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "paddingTop")
+  @TagAttribute(name = "paddingTop", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getPaddingTopValue();
+  public abstract void setPaddingTop(ValueExpression paddingTop);
+
+  public abstract Measure getPaddingTopValue();
 
   public abstract boolean isPaddingTopSet();
 
@@ -572,9 +613,11 @@ public abstract class GridLayoutConstrai
   /**
    * The bottom padding for this component. Its only applicably for containers.
    */
-  @TagAttribute(name = "paddingBottom")
+  @TagAttribute(name = "paddingBottom", type = "org.apache.myfaces.tobago.layout.Measure")
   @UIComponentTagAttribute(type = "org.apache.myfaces.tobago.layout.Measure")
-  public abstract String getPaddingBottomValue();
+  public abstract void setPaddingBottom(ValueExpression paddingBottom);
+
+  public abstract Measure getPaddingBottomValue();
 
   public abstract boolean isPaddingBottomSet();
 

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/LoadBundleTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/LoadBundleTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/LoadBundleTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/LoadBundleTag.java Fri Nov 23 20:11:38 2012
@@ -25,6 +25,7 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.apt.annotation.TagGeneration;
 import org.apache.myfaces.tobago.util.BundleMapWrapper;
 
+import javax.el.ValueExpression;
 import javax.faces.context.FacesContext;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
@@ -45,11 +46,14 @@ import java.util.Map;
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.LoadBundleTag")
 public abstract class LoadBundleTag extends TagSupport {
 
-  private static final long serialVersionUID = 4949984721486410191L;
+  private static final long serialVersionUID = 1L;
+
   /**
    * Base name of the resource bundle to be loaded.
    */
-  @TagAttribute(required = true, name = "basename")
+  @TagAttribute(required = true, name = "basename", type = "java.lang.String")
+  public abstract void setBasename(ValueExpression basename);
+
   public abstract String getBasenameValue();
 
   /**
@@ -57,6 +61,8 @@ public abstract class LoadBundleTag exte
    * will be exposed.
    */
   @TagAttribute(required = true, name = "var")
+  public abstract void setVar(ValueExpression var);
+
   public abstract String getVarValue();
 
   public int doStartTag() throws JspException {

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/PopupReferenceTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/PopupReferenceTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/PopupReferenceTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/PopupReferenceTag.java Fri Nov 23 20:11:38 2012
@@ -26,9 +26,11 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.compat.FacesUtils;
 import org.apache.myfaces.tobago.event.PopupActionListener;
 
+import javax.el.ValueExpression;
 import javax.faces.component.ActionSource;
 import javax.faces.component.UIComponent;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -45,12 +47,14 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.PopupReferenceTag")
 public abstract class PopupReferenceTag extends TagSupport {
 
-  private static final long serialVersionUID = -8444689365088370011L;
+  private static final long serialVersionUID = 1L;
 
   /**
    * The id of a Popup.
    */
-  @TagAttribute(required = true, name ="for")
+  @TagAttribute(required = true, name ="for", type = "java.lang.String")
+  public abstract void setFor(ValueExpression forValue);
+
   public abstract String getForValue();
 
   public abstract boolean isForLiteral();
@@ -60,8 +64,8 @@ public abstract class PopupReferenceTag 
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ResetInputActionListenerTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ResetInputActionListenerTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ResetInputActionListenerTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/ResetInputActionListenerTag.java Fri Nov 23 20:11:38 2012
@@ -29,9 +29,11 @@ import org.apache.myfaces.tobago.event.R
 import org.apache.myfaces.tobago.event.ResetInputActionListener;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 
+import javax.el.ValueExpression;
 import javax.faces.component.ActionSource;
 import javax.faces.component.UIComponent;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -42,12 +44,14 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.ResetInputActionListenerTag")
 public abstract class ResetInputActionListenerTag extends TagSupport {
 
-  private static final long serialVersionUID = -8444689365088370011L;
+  private static final long serialVersionUID = 1L;
 
   /**
    * The .
    */
-  @TagAttribute(required = false, name = Attributes.EXECUTE)
+  @TagAttribute(required = false, name = Attributes.EXECUTE, type = "java.lang.String")
+  public abstract void setExecute(ValueExpression execute);
+
   public abstract String getExecuteValue();
 
   public abstract boolean isExecuteLiteral();
@@ -59,8 +63,8 @@ public abstract class ResetInputActionLi
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/SubmittedValueLengthValidatorTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/SubmittedValueLengthValidatorTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/SubmittedValueLengthValidatorTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/SubmittedValueLengthValidatorTag.java Fri Nov 23 20:11:38 2012
@@ -24,6 +24,7 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.apt.annotation.TagGeneration;
 import org.apache.myfaces.tobago.validator.SubmittedValueLengthValidator;
 
+import javax.el.ValueExpression;
 import javax.faces.validator.Validator;
 import javax.faces.webapp.ValidatorTag;
 import javax.servlet.jsp.JspException;
@@ -38,31 +39,35 @@ import javax.servlet.jsp.JspException;
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.SubmittedValueLengthValidatorTag")
 public abstract class SubmittedValueLengthValidatorTag extends ValidatorTag {
 
-  private static final long serialVersionUID = 6777040780038715924L;
+  private static final long serialVersionUID = 1L;
+
+  @TagAttribute(name = "minimum", type = "java.lang.Integer")
+  public abstract void setMinimum(ValueExpression minimum);
+
+  public abstract Integer getMinimumValue();
 
   public abstract boolean isMinimumSet();
 
-  @TagAttribute(name = "minimum")
-  public abstract String getMinimumValue();
+  @TagAttribute(name = "maximum", type = "java.lang.Integer")
+  public abstract void setMaximum(ValueExpression maximum);
 
-  public abstract boolean isMaximumSet();
+  public abstract Integer getMaximumValue();
 
-  @TagAttribute(name = "maximum")
-  public abstract String getMaximumValue();
+  public abstract boolean isMaximumSet();
 
   protected Validator createValidator() throws JspException {
     setValidatorId(SubmittedValueLengthValidator.VALIDATOR_ID);
     SubmittedValueLengthValidator validator = (SubmittedValueLengthValidator) super.createValidator();
     if (isMinimumSet()) {
       try {
-        validator.setMinimum(Integer.parseInt(getMinimumValue()));
+        validator.setMinimum(getMinimumValue());
       } catch (NumberFormatException e) {
         // ignore
       }
     }
     if (isMaximumSet()) {
       try {
-        validator.setMaximum(Integer.parseInt(getMaximumValue()));
+        validator.setMaximum(getMaximumValue());
       } catch (NumberFormatException e) {
         // ignore
       }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/TabChangeListenerTag.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/TabChangeListenerTag.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/TabChangeListenerTag.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/TabChangeListenerTag.java Fri Nov 23 20:11:38 2012
@@ -26,12 +26,12 @@ import org.apache.myfaces.tobago.apt.ann
 import org.apache.myfaces.tobago.compat.FacesUtils;
 import org.apache.myfaces.tobago.event.TabChangeListener;
 import org.apache.myfaces.tobago.event.TabChangeSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
+import javax.el.ValueExpression;
 import javax.faces.component.UIComponent;
 import javax.faces.context.FacesContext;
-import javax.faces.webapp.UIComponentTag;
+import javax.faces.webapp.UIComponentClassicTagBase;
+import javax.faces.webapp.UIComponentELTag;
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.TagSupport;
 
@@ -43,15 +43,15 @@ import javax.servlet.jsp.tagext.TagSuppo
 @TagGeneration(className = "org.apache.myfaces.tobago.internal.taglib.TabChangeListenerTag")
 public abstract class TabChangeListenerTag extends TagSupport {
 
-  private static final long serialVersionUID = -419199086962377873L;
-
-  private static final Logger LOG = LoggerFactory.getLogger(TabChangeListenerTag.class);
+  private static final long serialVersionUID = 1L;
 
   /**
    * Fully qualified Java class name of a TabChangeListener to be
    * created and registered.
    */
-  @TagAttribute(required = true, name = "type")
+  @TagAttribute(required = true, name = "type", type = "java.lang.String")
+  public abstract void setType(ValueExpression type);
+
   public abstract String getTypeValue();
 
   public abstract boolean isTypeSet();
@@ -61,8 +61,10 @@ public abstract class TabChangeListenerT
   /**
    * The value binding expression to a TabChangeListener.
    */
-  @TagAttribute(name = "binding")
-  public abstract String getBindingValue();
+  @TagAttribute(name = "binding", type = "org.apache.myfaces.tobago.event.TabChangeListener")
+  public abstract void setBinding(ValueExpression binding);
+
+  public abstract TabChangeListener getBindingValue();
 
   public abstract boolean isBindingSet();
 
@@ -73,7 +75,7 @@ public abstract class TabChangeListenerT
   /**
    * <p>Create a new instance of the specified {@link TabChangeListener}
    * class, and register it with the {@link javax.faces.component.UIComponent} instance associated
-   * with our most immediately surrounding {@link javax.faces.webapp.UIComponentTag} instance, if
+   * with our most immediately surrounding {@link javax.faces.webapp.UIComponentELTag} instance, if
    * the {@link javax.faces.component.UIComponent} instance was created by this execution of the
    * containing JSP page.</p>
    *
@@ -82,8 +84,8 @@ public abstract class TabChangeListenerT
   public int doStartTag() throws JspException {
 
     // Locate our parent UIComponentTag
-    UIComponentTag tag =
-        UIComponentTag.getParentUIComponentTag(pageContext);
+    UIComponentClassicTagBase tag =
+        UIComponentELTag.getParentUIComponentClassicTagBase(pageContext);
     if (tag == null) {
       // TODO Message resource i18n
       throw new JspException("Not nested in faces tag");

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/package-info.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/package-info.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/package-info.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/taglib/component/package-info.java Fri Nov 23 20:11:38 2012
@@ -1,16 +1,16 @@
 /**
- * <b>Tobago Framework Component Tag Library 1.5.x -
+ * <b>Tobago Framework Component Tag Library 1.6.x -
  * (C) Copyright 2005-2012 The Apache Software Foundation</b>
  */
 @org.apache.myfaces.tobago.apt.annotation.Taglib(
     shortName = "tc",
-    tlibVersion = "1.5",
+    tlibVersion = "1.6",
     uri = "http://myfaces.apache.org/tobago/component",
     listener = {
         "org.apache.myfaces.tobago.webapp.TobagoServletContextListener",
         "org.apache.myfaces.tobago.webapp.SecretSessionListener"},
     fileName = "tobago.tld",
-    displayName = "Tobago Components 1.5.x")
+    displayName = "Tobago Components 1.6.x")
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file

Modified: myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/pom.xml?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/pom.xml (original)
+++ myfaces/tobago/trunk/tobago-extension/tobago-taglib-extension/pom.xml Fri Nov 23 20:11:38 2012
@@ -219,14 +219,13 @@
             <executions>
               <execution>
                 <id>tobago-doc</id>
-                <goals><goal>execute</goal></goals>
+                <goals><goal>process</goal></goals>
                 <configuration>
                   <outputFiles>
                     <outputFile>org/apache/myfaces/tobago/internal/taglib/extension/tobago-extension.xml</outputFile>
                   </outputFiles>
                   <sourceOutputDirectory>${project.build.directory}/doc</sourceOutputDirectory>
                   <factory>org.apache.myfaces.tobago.apt.TobagoAnnotationProcessorFactory</factory>
-                  <nocompile>true</nocompile>
                   <encoding>${maven.compile.encoding}</encoding>
                 </configuration>
               </execution>

Modified: myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/TaglibAnnotationVisitor.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/TaglibAnnotationVisitor.java?rev=1413043&r1=1413042&r2=1413043&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/TaglibAnnotationVisitor.java (original)
+++ myfaces/tobago/trunk/tobago-tool/tobago-tool-apt/src/main/java/org/apache/myfaces/tobago/apt/TaglibAnnotationVisitor.java Fri Nov 23 20:11:38 2012
@@ -477,15 +477,11 @@ public class TaglibAnnotationVisitor ext
               attribute.appendChild(deferredMethod);
             } else if (componentTagAttribute != null && componentTagAttribute.expression().isValueExpression()) {
               Element deferredValue = document.createElement("deferred-value");
-              String type = "java.lang.Object";
-              if (componentTagAttribute.expression().isValueExpression()) {
-                if (componentTagAttribute.type().length == 1
-                    // XXX fix me hack
-                    && !"org.apache.myfaces.tobago.layout.Measure".equals(componentTagAttribute.type()[0])) {
-                  type = componentTagAttribute.type()[0];
-                }
-              } else {
+              final String type;
+              if (componentTagAttribute.type().length == 1) {
                 type = componentTagAttribute.type()[0];
+              } else {
+                type = "java.lang.Object";
               }
               addLeafTextElement(type, "type", deferredValue, document);
               attribute.appendChild(deferredValue);