Wow, ui:repeat in c:forEach in tr:table.  You are a glutton
for punishment!

What happens in that example if you swap in tr:iterator
for ui:repeat?

-- Adam


On 6/20/07, Renzo Tomaselli <[EMAIL PROTECTED]> wrote:
Using tr:commandLink in the previous example seems ok, since proper row
keys are used. Don't know why h:commandLink does not work.
However my original example is a bit more complex as a command cell
contains a toolbar, and column set is iterated over by Facelets c:forEach:

<tr:table id="result" var="row"   ...
          <c:forEach var="column" items="#{bean.columnHeaders}"
varStatus="iteration">
               <tr:column>
                       .....
                        <h:panelGrid>
                            <ui:repeat var="spot"
value="#{cx:getToolbar(row, iteration.index)}">
                                <tr:commandLink immediate="true"
action="#{spot.execute}" disabled="#{spot.disabled}">
                                     <h:graphicImage
value="#{spot.icon}" style="border: 0px" title="#{spot.tooltip}"/>
                                </tr:commandLink>
                            </ui:repeat>
                        </h:panelGrid>

This does not work. CommandLink id of the first row is repeated for all
rows, while ui:repeat is ok in the sense that it appends an index to
every id.
Btw, I was wrong in my previous msg: a progressive id should appear just
because it's the way I generate row keys as returned by getRowKey.
It's just that the first row key is repeated.
I feel I will spend a debugging evening ...

-- Renzo

Adam Winer wrote:
> Question:  does this happen if you use tr:commandLink?
> h:commandLink certainly should work, just trying to
> reduce the set of possibilities.
>
> -- Adam
>
>
>
> On 6/20/07, Renzo Tomaselli <[EMAIL PROTECTED]> wrote:
>> Hi, while using a command link in a tr:table cell, the action method
>> gets multiple events upon icon click, actually as many events as
>> rendered rows.
>> Coding is something like:
>>
>> <tr:table id="result" var="row"   ...
>>                 <tr:column>
>>                                 <h:commandLink immediate="true"
>> action="#{row.execute}">
>>                                      <h:graphicImage
>> value="#{sessionBean.map['trash']}" style="border: 0px"/>
>>                                 </h:commandLink>
>>
>>  From rendered page, I noticed that all links are rendered as:
>>
>> <a class="OraLink" href="#"
>> 
onclick="submitForm('browser',0,{source:'splitty:tabby:result:d6:0:_id159'});return
>>
>> false;">
>>   <img style="border: 0px none ;"
>> src="/AxxBrowser/skins/skin1/images/trash.gif"/>
>> </a>
>>
>> while (I guess) it should be 0:_id159, 1:_id159, 2:_id159 ...
>> I guess from debugging that event generation occurs once per row since
>> component id is repeating, thus event source matches multiple times
>> (from CommandLinkRenderer.java).
>>
>> -- Renzo
>>
>>
>
>

Reply via email to