Hello while doing another round of testing and optimisations I noticed a slight difference in the implementations of the request of mojarra and myfaces which opened an area where the spec probably is unclear:<br><br>Following case:<br>
<br> <h:panelGroup id="bla"><br><br> <h:inputText id="inputbla" value="#{myBean2.searchTerm}" /><br><br> <h:commandLink value="Press me for more action" action="#{myBean2.doSearch}"><br>
<f:ajax execute="bla" render="content"/><br> </h:commandLink><br> </h:panelGroup><br><br>now results in following post data:<br>
<br>Mojarra:<br><br><pre>form2        form2
form2:inputbla        
javax.faces.ViewState        6697453697014869722:-1090088301633916042
javax.faces.behavior.even...        action
javax.faces.partial.ajax        true
javax.faces.partial.event        click
javax.faces.partial.execu...        form2:j_idt8 form2:bla
javax.faces.partial.rende...        form2:content
javax.faces.source        form2:j_idt8
in myfaces
form2:inputbla        
form2_SUBMIT        1
javax.faces.ViewState        EmWJgKYkJoTEWDCzpUwZQR3Ek94rGnxK1V6NEZgO6yDgPANeOc1wplJjDYezu2cx9aQ7ZSKNPyGY L8P9y5DwH2codFvGPjklD04wuxG4XXTPutNww3pdzIsMkw0=
javax.faces.behavior.even...        action
javax.faces.partial.ajax        true
javax.faces.partial.event        click
javax.faces.partial.execu...        form2:bla
javax.faces.partial.rende...        form2:content
javax.faces.source        form2:j_id1980473354_760ba132<br><br><br><br></pre>While most of the differeing data is mostly implementation specific and therefor it is not that interesting following is:<br><pre>javax.faces.partial.execu...        form2:j_idt8 form2:bla
</pre>
<br>compared to<br><br><pre>javax.faces.partial.execu...        form2:bla
</pre>
<br>Now the difference is that Mojarra adds the executing element as it seems<br>while MyFaces does not.<br>The second interesting fact is following definition from the spec:<br><br><ul><li>Determine additional arguments (if any) from the <code>options</code>
argument. If <code>options.execute</code> exists:
<ul><li>If the keyword <code>@none</code> is present, do not create and send
the post data argument <code>javax.faces.partial.execute</code>.</li><li>If the keyword <code>@all</code> is present, create the post data argument with
the name <code>javax.faces.partial.execute</code> and the value <code>@all</code>.</li><li><b>Otherwise, there are specific identifiers that need to be sent. Create the post
data argument with the name <code>javax.faces.partial.execute</code> and the value as a
space delimited <code>string</code> of client identifiers.</b></li></ul>
</li><li>If <code>options.execute</code> does not exist, create the post data argument with the
name <code>javax.faces.partial.execute</code> and the value as the identifier of the
element that caused this request.</li></ul><br>Which means exactly, that I am not sure which behavior is correct and which not. My personal guess is that both implementations are<br>correct because the spec clearly leaves it open if the issuing element also can be added to the exec list unless no exec list is given at all.<br>
But that is merely an assumption on my side here. <br>Any ideas on this.<br><br>Werner<br><br><br><br><br><br><br>