title: Richfaces: a4j support (action, actionListener) for an inputText inside a dataTable
body: <p>I have a JSP page in which the user must be allowed to edit data from a column and, when the form is submitted, update the respective table in database. Number of rows from this table is variable.</p>
  
  <p>For the editable info field I have the following code snippet (let's name it <strong>Block A</strong>) in a JSP page:</p>
  
  <pre><code>  &lt;h:inputText value="#{myBackingBean.theFieldValue}" &gt;
      &lt;a4j:support event="onchange" actionListener="#{myBackingBean.theActionListener}" action="#{myBackingBean.theAction}"/&gt;
    &lt;/h:inputText&gt;
  </code></pre>
  
  <p>The following code snippet (let's name it <strong>Block B</strong>) is from the backing bean:</p>
  
  <pre><code>public String theAction() {
      String outcome = null;
      System.out.println("the action method was invoked");
      return outcome;
  }
  
  public void theActionListener(ActionEvent actionEvent) {
      System.out.println("the action listener method was invoked");
  }
  </code></pre>
  
  <p>As you can see, whenever these methods are invoked that is printed to console output.</p>
  
  <p>My problem is:
  When I put <strong>Block A</strong> inside the following block (a <strong>single</strong> inputText component in the form):</p>
  
  <pre><code>&lt;h:form id="myForm"&gt;
    (...)
      here I put Block A
    (...)
  &lt;/h:form&gt;
  </code></pre>
  
  <p>The <strong>Block B</strong> is invoked without problem. But, if instead I put the <strong>Block A</strong> inside a rich:dataTable component as I need it (<strong>multiple</strong> inputText components in the form) in order to store each row's inputText value to database (here is where I need to invoke action and/or actionListener methods):</p>
  
  <pre><code>&lt;h:form id="myForm"&gt;
    &lt;rich:dataTable id="myDataTable" value="#{myBackingBean.myObjectList}" var="item" binding="#{myBackingBean.myObjectHtmlDataTable}" rendered="#{!empty myBackingBean.myObjectList}" rows="20"&gt;
      (...)
        &lt;rich:column&gt;
            here I put Block A
        &lt;/rich:column&gt;
      (...)
    &lt;/rich:dataTable&gt;
  &lt;/h:form&gt;
  </code></pre>
  
  <p>in this case, the <strong>Block B</strong> is never reached.</p>
  
  <p>I'm working with <strong>JSF 1.2</strong>, and <strong>RichFaces 3.3.3</strong>, all needed beans and navigation rules are correctly configured. All needed getters and setters are in their respective classes.</p>
  
  <p>Please could you give me some advice to make my code to work properly? Thanks in advance.</p>