Como ajax atualizar um item no rodapé de uma dataTable do PrimeFaces?

Este é um visual da tabela que tenho:

+---------+------------+-------------------+
| Header1 |  Header2   | Header3           |
+---------+------------+-------------------+
| Row A   |  Input A   | Calc'ed output A  |
| Row B   |  Input B   | Calc'ed output B  |
| etc..   |  etc..     |  etc..            |
+---------+------------+-------------------+
|    Total:          Total calc'ed output  |
+------------------------------------------+

E o código simplificado:

<p:dataTable id="myTable" value="#{myBean.someList}"
    var="currentItem">

    <p:column headerText="Header1">
        <h:outputText value="#{currentItem.name}" />
    </p:column>

    <p:column headerText="Header2">
        <pe:inputNumber value="#{currentItem.inputVal}">
            <p:ajax event="change" listener="#{myBean.changeListener}"
                update="outputVal outputTotal" />
        </pe:inputNumber>
    </p:column>

    <p:column headerText="Header3">
        <h:outputText id="outputVal" value="#{currentItem.outputVal}" />
    </p:column>

    <f:facet name="footer">
        Total:
        <h:outputText id="outputTotal" value="#{myBean.total}" />
    </f:facet>

</p:dataTable>

omyBean.someList é umArrayList<SomeOtherBean> com uma String e dois Inteiros, com apenas getters e setters. omyBean.changeListener calcula o segundo inteiro a partir do primeiro para a linha especificada e também o total para todas as linhas.

Então, quando eu digito uma das entradas, então o foco é chamado e o cálculo é feito, mas na tela o valor na terceira coluna muda, mas o total teimosamente permanece zero. Tenho certeza de que isso tem algo a ver com o PrimeFaces anexando o índice de linha aos IDs gerados de cada entrada e saída, mas não consigo descobrir como chegar à saída no rodapé (cujo ID gerado émainForm:myTable:0:outputTotal)

Agora, eu poderia apenas atualizar a tabela pai. No entanto, sempre que a entrada para receber o foco faz parte do destino da atualização, o foco é perdido e estou sob regras de acessibilidade extremamente rígidas que esta tabeladevo seja amigável com o teclado (digite um número, guia, digite um número, guia, etc ...)

Eu tentei:

update = ": outputTotal" (deu a exceção Não foi possível encontrar o componente com o identificador ...)update = "myTable: 0: outputTota (mesma exceção)update = "myTable: outputTotal" (sem atualização, o total permanece zero)agrupar o texto em um panelGroup e atualizar isso (sem atualização)

(PrimeFaces 3.5.0 com versão desconhecida do MyFaces)

questionAnswers(1)

yourAnswerToTheQuestion