You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-commits@incubator.apache.org by aw...@apache.org on 2006/10/05 17:31:52 UTC

svn commit: r453292 - in /incubator/adffaces/branches/faces-1_2/trinidad: trinidad-api/src/site/xdoc/tagdoc/ trinidad-demo/src/main/webapp/components/ trinidad-demo/src/main/webapp/demos/ trinidad-demo/src/main/webapp/email/ trinidad-demo/src/main/weba...

Author: awiner
Date: Thu Oct  5 10:31:50 2006
New Revision: 453292

URL: http://svn.apache.org/viewvc?view=rev&rev=453292
Log:
Delete tr:attribute, tr:validator, and tr:forEach - all of which are unnecessary in JSF 1.2.  Change setActionLIstener and returnActionListener to use ValueExpressions, and update some Facelets code to support MethodExpression and MethodBindings.  Facelets has not yet been tested on this branch

Removed:
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-api/src/site/xdoc/tagdoc/tr_attribute.xml
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-api/src/site/xdoc/tagdoc/tr_forEach.xml
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-api/src/site/xdoc/tagdoc/tr_validator.xml
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/AttributeTag.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/ForEachTag.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/ValidatorTag.java
Modified:
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/components/selectRangeChoiceBar.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/demos/progressSteps.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/email/showMessage.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage1.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage3.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage5.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyResults.jspx
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/conf/META-INF/tr-base.tld
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/SetActionListenerTag.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/TrinidadListenersTagRule.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/convert/ConvertIntegerTag.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListener.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListenerTag.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListener.java
    incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListenerTag.java

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/components/selectRangeChoiceBar.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/components/selectRangeChoiceBar.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/components/selectRangeChoiceBar.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/components/selectRangeChoiceBar.jspx Thu Oct  5 10:31:50 2006
@@ -17,6 +17,7 @@
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
           version="1.2"
           xmlns:f="http://java.sun.com/jsf/core"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:h="http://java.sun.com/jsf/html"
           xmlns:trh="http://myfaces.apache.org/trinidad/html"
           xmlns:tr="http://myfaces.apache.org/trinidad">
@@ -54,9 +55,9 @@
                   </f:facet>
                 </tr:selectRangeChoiceBar>
                 <tr:panelGroupLayout partialTriggers="selectRangeCBId1">
-                   <tr:forEach items="#{animals.namesInRange}" var="animalName">
+                   <c:forEach items="#{animals.namesInRange}" var="animalName">
                     <tr:outputText value="#{animalName}, "/>
-                  </tr:forEach>
+                  </c:forEach>
                 </tr:panelGroupLayout>
               </tr:panelGroupLayout>
 

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/demos/progressSteps.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/demos/progressSteps.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/demos/progressSteps.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/demos/progressSteps.jspx Thu Oct  5 10:31:50 2006
@@ -17,6 +17,7 @@
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
           xmlns:f="http://java.sun.com/jsf/core"
           xmlns:h="http://java.sun.com/jsf/html"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:trh="http://myfaces.apache.org/trinidad/html" 
           xmlns:tr="http://myfaces.apache.org/trinidad" >
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
@@ -35,7 +36,7 @@
              </tr:navigationPane>
             </f:facet>
           <tr:panelHeader
-             text="Progress steps demo using tr:forEach and BoundedRangeModel">
+             text="Progress steps demo using c:forEach and BoundedRangeModel">
 
             <tr:poll 
               binding="#{editor.component}" 
@@ -47,7 +48,7 @@
               value="&lt;b>The steps completed in a background task could be 
               shown as a check list or a growing list as shown below.&lt;br>
               This could be achieved using suitable output components and the
-              'tr:forEach' tag in conjunction with bindings to a 
+              'c:forEach' tag in conjunction with bindings to a 
               BoundedRangeModel&lt;/b>"/>
 
             <!--Represents a check list-->
@@ -55,7 +56,7 @@
             <tr:panelGroupLayout layout="horizontal">
               <tr:spacer width="30"/>
               <tr:panelGroupLayout layout="vertical" partialTriggers="pollid" id="pg1">
-                <tr:forEach 
+                <c:forEach 
                   var="progressStep" 
                   varStatus="vs" 
                   begin="0" 
@@ -73,7 +74,7 @@
                       value="#{progressStep}" 
                       styleClass="AFFieldText"/>
                   </tr:panelGroupLayout>
-                </tr:forEach>
+                </c:forEach>
               </tr:panelGroupLayout>
             </tr:panelGroupLayout>
 
@@ -82,7 +83,7 @@
             <tr:panelGroupLayout layout="horizontal">
               <tr:spacer width="30"/>
               <tr:panelGroupLayout layout="vertical" partialTriggers="pollid" id="pg2">
-                <tr:forEach 
+                <c:forEach 
                   var="progressStep" 
                   varStatus="vs" 
                   begin="0" 
@@ -94,7 +95,7 @@
                       styleClass="AFFieldText"
                       rendered="#{progressSteps.progressModel.value >= vs.index}"/>
                   </tr:panelGroupLayout>
-                </tr:forEach>
+                </c:forEach>
               </tr:panelGroupLayout>
             </tr:panelGroupLayout>
 

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/email/showMessage.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/email/showMessage.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/email/showMessage.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/email/showMessage.jspx Thu Oct  5 10:31:50 2006
@@ -16,6 +16,7 @@
 -->
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
           xmlns:f="http://java.sun.com/jsf/core"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:trh="http://myfaces.apache.org/trinidad/html" 
           xmlns:tr="http://myfaces.apache.org/trinidad" >
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
@@ -74,19 +75,19 @@
                 </tr:panelLabelAndMessage>
                 <tr:panelLabelAndMessage label="To:">
                   <tr:panelGroupLayout layout="vertical">
-                    <tr:forEach items="#{showMessageBacking.message.tos}"
+                    <c:forEach items="#{showMessageBacking.message.tos}"
                                 var="address">  
                       <tr:outputText value="#{address}"/>
-                    </tr:forEach>
+                    </c:forEach>
                  </tr:panelGroupLayout>
                 </tr:panelLabelAndMessage>
                 <tr:panelLabelAndMessage label="Cc:"
                   labelStyle="vertical-align: top;">
                   <tr:panelGroupLayout layout="vertical">
-                    <tr:forEach items="#{showMessageBacking.message.ccs}"
+                    <c:forEach items="#{showMessageBacking.message.ccs}"
                                 var="address">
                       <tr:outputText value="#{address}"/>
-                    </tr:forEach>
+                    </c:forEach>
                   </tr:panelGroupLayout>
                 </tr:panelLabelAndMessage>
                 <tr:inputText label="Subject:" readOnly="true"
@@ -122,14 +123,14 @@
               <tr:panelBox text="Attachments"
                     rendered="#{showMessageBacking.message.attachmentPresent}">
                 <tr:panelGroupLayout layout="vertical">
-                  <tr:forEach items="#{showMessageBacking.message.attachments}"
+                  <c:forEach items="#{showMessageBacking.message.attachments}"
                               var="attachment">
                     <tr:commandLink text="#{attachment.fileName}"
                         action="#{showMessageBacking.downloadAttachment}">
                       <tr:setActionListener from="#{attachment}"
                          to="#{showMessageBacking.attachmentToDownload}"/>
                     </tr:commandLink>
-                  </tr:forEach>
+                  </c:forEach>
                 </tr:panelGroupLayout>
               </tr:panelBox>
             </f:facet>

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage1.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage1.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage1.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage1.jspx Thu Oct  5 10:31:50 2006
@@ -16,6 +16,7 @@
 -->
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
           xmlns:f="http://java.sun.com/jsf/core"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:tr="http://myfaces.apache.org/trinidad" >
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
   <f:view>
@@ -30,11 +31,11 @@
             <tr:selectOneRadio label="#{survey.q0.prompt}" 
                                   required="true"
                                   value="#{survey.a0}" >
-              <tr:forEach var="item" varStatus="iter"
+              <c:forEach var="item" varStatus="iter"
                           items="#{survey.q0.answerStrings}">
                 <!-- The strange EL syntax for "value" forces it to be a string -->
                 <tr:selectItem label="#{item}" value="#{''}#{iter.index}"/>
-              </tr:forEach>
+              </c:forEach>
             </tr:selectOneRadio >
           
           </tr:panelFormLayout>

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage3.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage3.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage3.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage3.jspx Thu Oct  5 10:31:50 2006
@@ -16,6 +16,7 @@
 -->
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
           xmlns:f="http://java.sun.com/jsf/core"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:tr="http://myfaces.apache.org/trinidad" >
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
   <f:view>
@@ -29,11 +30,11 @@
           <tr:selectOneRadio label="#{survey.q2.prompt}" 
                                 required="true"
                                 value="#{survey.a2}">            
-            <tr:forEach var="item" varStatus="iter"
+            <c:forEach var="item" varStatus="iter"
                        items="#{survey.q2.answerStrings}">
              <!-- The strange EL syntax for "value" forces it to be a string -->
               <tr:selectItem label="#{item}" value="#{''}#{iter.index}"/>
-            </tr:forEach>
+            </c:forEach>
           </tr:selectOneRadio >
         </tr:panelFormLayout>
       </tr:panelHeader>

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage5.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage5.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage5.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyPage5.jspx Thu Oct  5 10:31:50 2006
@@ -16,6 +16,7 @@
 -->
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
           xmlns:f="http://java.sun.com/jsf/core"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:tr="http://myfaces.apache.org/trinidad" >
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
   <f:view>
@@ -28,11 +29,11 @@
           <tr:selectOneRadio label="#{survey.q4.prompt}" 
                                 required="true"
                                 value="#{survey.a4}">            
-            <tr:forEach var="item" varStatus="iter"
+            <c:forEach var="item" varStatus="iter"
                        items="#{survey.q4.answerStrings}">
               <!-- The strange EL syntax for "value" forces it to be a string -->
               <tr:selectItem label="#{item}" value="#{''}#{iter.index}"/>
-            </tr:forEach>
+            </c:forEach>
            </tr:selectOneRadio >
         </tr:panelFormLayout>
       </tr:panelHeader>

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyResults.jspx
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyResults.jspx?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyResults.jspx (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-demo/src/main/webapp/surveydemo/surveyResults.jspx Thu Oct  5 10:31:50 2006
@@ -16,6 +16,7 @@
 -->
 <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
           xmlns:f="http://java.sun.com/jsf/core"
+          xmlns:c="http://java.sun.com/jsp/jstl/core"
           xmlns:tr="http://myfaces.apache.org/trinidad" 
           xmlns:survey="http://myfaces.apache.org/trinidad/demo" >
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
@@ -31,11 +32,11 @@
              <tr:selectOneRadio label="#{survey.q0.prompt}" 
                                     required="true"
                                     value="#{survey.a0}">            
-              <tr:forEach var="item" varStatus="iter"
+              <c:forEach var="item" varStatus="iter"
                           items="#{survey.q0.answerStrings}">
                 <!-- The strange EL syntax for "value" forces it to be a string -->
                 <tr:selectItem label="#{item}" value="#{''}#{iter.index}"/>
-              </tr:forEach>
+              </c:forEach>
               <survey:validate_answer questionIndex="0"/>
              </tr:selectOneRadio >
       
@@ -53,11 +54,11 @@
              <tr:selectOneRadio label="#{survey.q2.prompt}" 
                                   required="true"
                                   value="#{survey.a2}">            
-              <tr:forEach var="item" varStatus="iter"
+              <c:forEach var="item" varStatus="iter"
                           items="#{survey.q2.answerStrings}">
                 <!-- The strange EL syntax for "value" forces it to be a string -->
                 <tr:selectItem label="#{item}" value="#{''}#{iter.index}"/>
-              </tr:forEach>
+              </c:forEach>
               
               <survey:validate_answer questionIndex="2"/>
             </tr:selectOneRadio >
@@ -88,11 +89,11 @@
             <tr:selectOneRadio label="#{survey.q4.prompt}" 
                                   required="true"
                                   value="#{survey.a4}">            
-              <tr:forEach var="item" varStatus="iter"
+              <c:forEach var="item" varStatus="iter"
                           items="#{survey.q4.answerStrings}">
                 <!-- The strange EL syntax for "value" forces it to be a string -->
                 <tr:selectItem label="#{item}" value="#{''}#{iter.index}"/>
-              </tr:forEach>
+              </c:forEach>
               
               <survey:validate_answer questionIndex="4"/>
             </tr:selectOneRadio >        

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/conf/META-INF/tr-base.tld
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/conf/META-INF/tr-base.tld?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/conf/META-INF/tr-base.tld (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/conf/META-INF/tr-base.tld Thu Oct  5 10:31:50 2006
@@ -25,131 +25,6 @@
   <short-name>tr</short-name>
   <uri>http://myfaces.apache.org/trinidad</uri>
         
-    <tag>
-      <description>
-        The Attribute tag adds a property with the specified name and value 
-        to the component associated with the parent tag.  It behaves the same
-        as the JSF Attribute tag except that it creates a value binding for 
-        expressions instead of immediately evaluating it.  
-      </description>
-      <name>attribute</name>   
-      <tag-class>org.apache.myfaces.trinidadinternal.taglib.AttributeTag</tag-class>
-      <body-content>empty</body-content>
-      <attribute>
-        <description>
-          the name of the attribute
-        </description>
-        <name>name</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-      <attribute>
-        <description>
-          the value of the attribute
-        </description>
-        <name>value</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-    </tag>
-    
-
-    <tag>
-      <description>
-        The Validator tag adds a new validator instance to the component
-        associated with the parent tag. The new validator instance is found
-        by evaluating a binding expression, or looking up a validator ID.
-        This implements the JSF 1.2 definition of &lt;f:validator&gt;.
-      </description>
-      <name>validator</name>   
-      <tag-class>org.apache.myfaces.trinidadinternal.taglib.ValidatorTag</tag-class>
-      <body-content>empty</body-content>
-      <attribute>
-        <description>
-          the ID of a validator instance registered in faces-config.xml
-        </description>
-        <name>validatorId</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-      <attribute>
-        <description>
-          the value binding expression to a property that returns a
-          ValidatorInstance.
-        </description>
-        <name>binding</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-    </tag>        
-
-   <tag>
-      <name>forEach</name>
-      <description>
-The forEach tag is a replacement for the JSTL &amp;lt;c:forEach&amp;gt; tag
-                that works with Apache Trinidad components.  Today, &amp;lt;c:forEach&amp;gt; cannot
-                be used with any JSF components or tags.  This tag brings that functionality
-        to JSF, but it is limited to Apache Trinidad tags. This tag also has several limitations not found in &amp;lt;c:forEach&amp;gt;:
-        &lt;ul&gt;
-        &lt;li&gt;&amp;lt;tr:forEach&amp;gt; does not currently support scenarios where the size of the "items" list or array changes from one request to the next. It may be possible to work around this in specific scenarios by manually deleting all children of the parent component (&amp;lt;tr:selectOneListbox&amp;gt; in the above example), but this has not yet been tested.&lt;/li&gt;
-        &lt;li&gt;&amp;lt;tr:forEach&amp;gt; does not support arbitrary java.util.Collections; it can only iterate over java.util.Lists or arrays.&lt;/li&gt;
-        &lt;li&gt;&amp;lt;tr:forEach&amp;gt; executes at the time the JSP tag executes. So it 
-        does not have access to any EL variables that are created by JSF components.
-        For example, the &amp;lt;tr:table&amp;gt; creates an EL variable using the value of
-        the "var" attribute. However, this EL variable is not available 
-to &amp;lt;tr:forEach&amp;gt;     
-        &lt;/li&gt;
-        &lt;/ul&gt;
-      </description>
-
-      <tag-class>org.apache.myfaces.trinidadinternal.taglib.ForEachTag</tag-class>
-      <attribute>
-        <description>
-          the items over which iteration takes place 
-        </description>
-        <name>items</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-
-      <attribute>
-        <description>
-          the name of the variable to expose
-        </description>
-        <name>var</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-
-      <attribute>
-        <description>
-          Name of the exported scoped variable for the
-          status of the iteration.
-        </description>
-        <name>varStatus</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-
-      <attribute>
-        <description>
-          the beginning index 
-        </description>
-        <name>begin</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-
-      <attribute>
-        <description>
-          the ending index 
-        </description>
-        <name>end</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-
-      <attribute>
-        <description>
-          the number of steps per iteration
-        </description>
-        <name>step</name>
-        <rtexprvalue>false</rtexprvalue>
-      </attribute>
-
-   </tag>
-
    <tag>
       <description>
         The setActionListener tag provides a declarative syntax for assigning values before an action fires
@@ -164,7 +39,7 @@
         </description>
         <name>to</name>
         <required>true</required>
-        <rtexprvalue>false</rtexprvalue>
+        <deferred-value/>
       </attribute>
 
       <attribute>
@@ -173,7 +48,7 @@
         </description>
         <name>from</name>
         <required>true</required>
-        <rtexprvalue>false</rtexprvalue>
+        <deferred-value/>
       </attribute>
    </tag>
 
@@ -192,7 +67,7 @@
           This can be an EL expression or a constant value.
         </description>
         <name>value</name>
-        <rtexprvalue>false</rtexprvalue>
+        <deferred-value/>
       </attribute>
    </tag>
 
@@ -226,7 +101,7 @@
         </description>
         <name>componentType</name>
         <required>true</required>
-        <rtexprvalue>false</rtexprvalue>
+        <deferred-value/>
       </attribute>
 
       <attribute>
@@ -235,7 +110,6 @@
         </description>
         <name>id</name>
         <required>true</required>
-        <rtexprvalue>false</rtexprvalue>
       </attribute>
 
       <attribute>
@@ -244,7 +118,7 @@
         </description>
         <name>value</name>
         <required>false</required>
-        <rtexprvalue>false</rtexprvalue>
+        <deferred-value/>
       </attribute>
 
       <attribute>
@@ -253,7 +127,7 @@
         </description>
         <name>rendered</name>
         <required>false</required>
-        <rtexprvalue>false</rtexprvalue>
+        <deferred-value/>
       </attribute>
 
    </tag>

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/SetActionListenerTag.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/SetActionListenerTag.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/SetActionListenerTag.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/SetActionListenerTag.java Thu Oct  5 10:31:50 2006
@@ -24,14 +24,12 @@
 
 import com.sun.facelets.FaceletContext;
 import com.sun.facelets.FaceletException;
-import com.sun.facelets.el.LegacyValueBinding;
 import com.sun.facelets.tag.TagAttribute;
 import com.sun.facelets.tag.TagConfig;
 import com.sun.facelets.tag.TagHandler;
 import com.sun.facelets.tag.jsf.ComponentSupport;
 
 /**
- * @todo it should be removed after we consume JSF1.2.
  * @author Emmanuel Pirsch
  */
 public class SetActionListenerTag extends TagHandler
@@ -57,10 +55,10 @@
                                                             Object.class);
       ActionSource actionSource= (ActionSource) parent;
       SetActionListener listener = new SetActionListener();
-      listener.setValueBinding(SetActionListener.FROM_KEY,
-                               new LegacyValueBinding(fromExpression));
-      listener.setValueBinding(SetActionListener.TO_KEY,
-                               new LegacyValueBinding(toExpression));
+      listener.setValueExpression(SetActionListener.FROM_KEY,
+                                  fromExpression);
+      listener.setValueExpression(SetActionListener.TO_KEY,
+                                  toExpression);
       actionSource.addActionListener(listener);
     }
   }

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/TrinidadListenersTagRule.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/TrinidadListenersTagRule.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/TrinidadListenersTagRule.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/facelets/TrinidadListenersTagRule.java Thu Oct  5 10:31:50 2006
@@ -39,9 +39,9 @@
 {
   public static final MetaRule Instance = new TrinidadListenersTagRule();
 
-  private static class ListenerPropertyMetadata extends Metadata
+  private static class ListenerMBPropertyMetadata extends Metadata
   {
-    public ListenerPropertyMetadata(Method method, TagAttribute attribute, Class[] paramList)
+    public ListenerMBPropertyMetadata(Method method, TagAttribute attribute, Class[] paramList)
     {
       _method = method;
       _attribute = attribute;
@@ -74,6 +74,42 @@
     private final TagAttribute _attribute;
     private       Class[]      _paramList;
   }
+
+  private static class ListenerMEPropertyMetadata extends Metadata
+  {
+    public ListenerMEPropertyMetadata(Method method, TagAttribute attribute, Class[] paramList)
+    {
+      _method = method;
+      _attribute = attribute;
+      _paramList = paramList;
+    }
+    
+    @Override
+    @SuppressWarnings("deprecation")
+    public void applyMetadata(FaceletContext ctx, Object instance)
+    {
+      MethodExpression expr =
+        _attribute.getMethodExpression(ctx, null, _paramList);
+      
+      try
+      {
+        _method.invoke(instance,
+                       new Object[]{expr});
+      }
+      catch (InvocationTargetException e)
+      {
+        throw new TagAttributeException(_attribute, e.getCause());
+      }
+      catch (Exception e)
+      {
+        throw new TagAttributeException(_attribute, e);
+      }
+    }
+
+    private final Method       _method;
+    private final TagAttribute _attribute;
+    private       Class[]      _paramList;
+  }
    
 
   @Override
@@ -82,7 +118,11 @@
      TagAttribute attribute,
      MetadataTarget meta)
   {
-    if ((meta.getPropertyType(name) == MethodBinding.class) &&
+    Class metaType = meta.getPropertyType(name);
+    boolean isMethodBinding = (metaType == MethodBinding.class);
+    boolean isMethodExpression = (metaType == MethodExpression.class);
+
+    if ((isMethodBinding || isMethodExpression) &&
         name.endsWith("Listener"))
     {
       // OK, we're trying to call setFooListener()
@@ -110,8 +150,12 @@
           return null;
 
         // And go
-        return new ListenerPropertyMetadata(m, attribute,
-                                            new Class[]{eventClass});
+        if (isMethodBinding)
+          return new ListenerMBPropertyMetadata(m, attribute,
+                                                new Class[]{eventClass});
+        else
+          return new ListenerMEPropertyMetadata(m, attribute,
+                                                new Class[]{eventClass});
       }
     }
     return null;

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/convert/ConvertIntegerTag.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/convert/ConvertIntegerTag.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/convert/ConvertIntegerTag.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/convert/ConvertIntegerTag.java Thu Oct  5 10:31:50 2006
@@ -15,8 +15,10 @@
  */
 package org.apache.myfaces.trinidadinternal.taglib.convert;
 
+import javax.faces.application.Application;
 import javax.faces.convert.Converter;
-import javax.faces.webapp.ConverterTag;
+import javax.faces.context.FacesContext;
+import javax.faces.webapp.ConverterELTag;
 
 import javax.servlet.jsp.JspException;
 import org.apache.myfaces.trinidadinternal.convert.IntegerConverter;
@@ -25,28 +27,22 @@
 
  * @version 2.0 (1.0) 2000/03/16 23:23:33
  */
-public class ConvertIntegerTag extends ConverterTag
+public class ConvertIntegerTag extends ConverterELTag
 {
 
   public ConvertIntegerTag()
   {
   }
 
-  @Override
-  public int doStartTag() throws JspException
-  {
-    super.setConverterId(IntegerConverter.CONVERTER_ID);
-    return super.doStartTag();
-  }
-
   /**
    * 
    */
   @Override
   protected Converter createConverter() throws JspException
   {
-    IntegerConverter converter =
-                              (IntegerConverter)super.createConverter();
+    Application application = FacesContext.getCurrentInstance().getApplication();
+    IntegerConverter converter = (IntegerConverter)
+      application.createConverter(IntegerConverter.CONVERTER_ID);
     return converter;
   }
 }

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListener.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListener.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListener.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListener.java Thu Oct  5 10:31:50 2006
@@ -15,6 +15,8 @@
  */
 package org.apache.myfaces.trinidadinternal.taglib.listener;
 
+import javax.el.ValueExpression;
+
 import javax.faces.component.StateHolder;
 import javax.faces.event.ActionEvent;
 import javax.faces.event.ActionListener;
@@ -45,19 +47,17 @@
 
   public void processAction(ActionEvent event)
   {
-    Object value = getValue();
+    Object value = getProperty(VALUE_KEY);
     RequestContext adf = RequestContext.getCurrentInstance();
     adf.returnFromDialog(value, null);
   }
 
-  public Object getValue()
-  {
-    return getProperty(VALUE_KEY);
-  }
-
-  public void setValue(Object value)
+  public void setValue(ValueExpression value)
   {
-    setProperty(VALUE_KEY, value);
+    if (value.isLiteralText())
+      setProperty(VALUE_KEY, value.getValue(null));
+    else
+      setValueExpression(VALUE_KEY, value);
   }
 
   @Override

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListenerTag.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListenerTag.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListenerTag.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/ReturnActionListenerTag.java Thu Oct  5 10:31:50 2006
@@ -17,6 +17,8 @@
 
 import org.apache.myfaces.trinidadinternal.taglib.util.TagUtils;
 
+import javax.el.ValueExpression;
+
 import javax.servlet.jsp.tagext.TagSupport;
 import javax.servlet.jsp.JspException;
 
@@ -35,7 +37,7 @@
  */
 public class ReturnActionListenerTag extends TagSupport
 {
-  public void setValue(String value)
+  public void setValue(ValueExpression value)
   {
     _value = value;
   }
@@ -69,21 +71,8 @@
 
     ReturnActionListener listener = new ReturnActionListener();
     if (_value != null)
-    {
-      String value = _value;
-      if (TagUtils.isValueReference(value))
-      {
-        if (parentELContext != null)
-          value = parentELContext.transformExpression(value);
-
-        listener.setValueBinding(ReturnActionListener.VALUE_KEY,
-                                 application.createValueBinding(value));
-      }
-      else
-      {
-        listener.setValue(value);
-      }
-    }
+      listener.setValue(_value);
+
     ((ActionSource) component).addActionListener(listener);
 
     return super.doStartTag();
@@ -96,5 +85,5 @@
     _value = null;
   }
 
-  private String _value;
+  private ValueExpression _value;
 }

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListener.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListener.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListener.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListener.java Thu Oct  5 10:31:50 2006
@@ -15,6 +15,8 @@
  */
 package org.apache.myfaces.trinidadinternal.taglib.listener;
 
+import javax.el.ValueExpression;
+
 import javax.faces.component.StateHolder;
 import javax.faces.context.FacesContext;
 import javax.faces.el.ValueBinding;
@@ -58,23 +60,23 @@
 
   public void processAction(ActionEvent event)
   {
-    ValueBinding to = getValueBinding(TO_KEY);
+    ValueExpression to = getValueExpression(TO_KEY);
     if (to != null)
     {
-      Object from = getFrom();
+      Object from = getProperty(FROM_KEY);
       try
       {
-        to.setValue(FacesContext.getCurrentInstance(), from);
+        to.setValue(FacesContext.getCurrentInstance().getELContext(), from);
       }
       catch (RuntimeException e)
       {
         if (_LOG.isWarning())
         {
-          ValueBinding fromBinding = getValueBinding(FROM_KEY);
+          ValueExpression fromExpression = getValueExpression(FROM_KEY);
           String mes = "Error setting:'"+to.getExpressionString() +
             "' to value:"+from;
-          if (fromBinding != null)
-            mes += " from:'"+fromBinding.getExpressionString()+"'";
+          if (fromExpression != null)
+            mes += " from:'"+fromExpression.getExpressionString()+"'";
             
           _LOG.warning(mes, e);
         }
@@ -83,14 +85,20 @@
     }
   }
 
-  public Object getFrom()
+  public void setFrom(ValueExpression from)
   {
-    return getProperty(FROM_KEY);
+    if (from.isLiteralText())
+      setProperty(FROM_KEY, from.getValue(null));
+    else
+      setValueExpression(FROM_KEY, from);
   }
 
-  public void setFrom(Object from)
+  public void setTo(ValueExpression to)
   {
-    setProperty(FROM_KEY, from);
+    if (to.isLiteralText())
+      throw new IllegalArgumentException("setActionListener's 'to' must be an EL expression");
+    
+    setValueExpression(TO_KEY, to);
   }
 
   @Override

Modified: incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListenerTag.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListenerTag.java?view=diff&rev=453292&r1=453291&r2=453292
==============================================================================
--- incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListenerTag.java (original)
+++ incubator/adffaces/branches/faces-1_2/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/listener/SetActionListenerTag.java Thu Oct  5 10:31:50 2006
@@ -17,6 +17,8 @@
 
 import org.apache.myfaces.trinidadinternal.taglib.util.TagUtils;
 
+import javax.el.ValueExpression;
+
 import javax.servlet.jsp.tagext.TagSupport;
 import javax.servlet.jsp.JspException;
 
@@ -37,12 +39,12 @@
  */
 public class SetActionListenerTag extends TagSupport
 {
-  public void setFrom(String from)
+  public void setFrom(ValueExpression from)
   {
     _from = from;
   }
 
-  public void setTo(String to)
+  public void setTo(ValueExpression to)
   {
     _to = to;
   }
@@ -77,34 +79,13 @@
     SetActionListener listener = new SetActionListener();
     if (_from != null)
     {
-      if (TagUtils.isValueReference(_from))
-      {
-        String from = _from;
-        if (parentELContext != null)
-          from = parentELContext.transformExpression(from);
-
-        listener.setValueBinding(SetActionListener.FROM_KEY,
-                                 application.createValueBinding(from));
-      }
-      else
-      {
-        listener.setFrom(_from);
-      }
-
-      if (TagUtils.isValueReference(_to))
-      {
-        String to = _to;
-        if (parentELContext != null)
-          to = parentELContext.transformExpression(to);
-
-        listener.setValueBinding(SetActionListener.TO_KEY,
-                                 application.createValueBinding(to));
-      }
-      else
-      {
+      listener.setFrom(_from);
+      if (_to.isLiteralText())
         throw new JspException("setActionListener's 'to' attribute must " +
                                "be an EL expression.");
-      }
+
+      if (_to != null)
+        listener.setTo(_to);
     }
 
     ((ActionSource) component).addActionListener(listener);
@@ -120,6 +101,6 @@
     _to = null;
   }
 
-  private String _from;
-  private String _to;
+  private ValueExpression _from;
+  private ValueExpression _to;
 }