Adam-- I used firebug and the problem arises from a parse error of the xml response. It seems as though the </content> closing element is missing from the response. I have included the text from the response below.
<content action="/vbm/faces/pages/secure/telephony/accountSearch.jspx"> <fragment><![CDATA[<div id="j_id_jsp_1566647018_3:acctTable"><table cellpadding="0" cellspacing="0" border="0" width="90%" summary=""><tr><td><table cellpadding="0" cellspacing="0" border="0" width="100%" summary="" class="x6m"><tr><td><button type="button" onclick="submitForm('acctForm',1,{source:'j_id_jsp_1566647018_3:acctTabl e:j_id_jsp_1566647018_15'});return false;" class="x6s">Clear Results</button></td><td width="100%"></td></tr></table></td></tr><tr><td><table cellpadding="0" cellspacing="0" border="0" width="100%" summary="" class="x6q"><tr><td nowrap="nowrap" valign="middle"><a onclick="return _submitHideShow('acctForm',1,'show','j_id_jsp_1566647018_3:acctTable','j _id_jsp_1566647018_3:acctTable__xc_sa','all')" href="#" id="j_id_jsp_1566647018_3:acctTable__xc_sa" class="xi">Show All Details</a> | <a onclick="return _submitHideShow('acctForm',1,'hide','j_id_jsp_1566647018_3:acctTable','j _id_jsp_1566647018_3:acctTable__xc_ha','all')" href="#" id="j_id_jsp_1566647018_3:acctTable__xc_ha" class="xi">Hide All Details</a></td></tr></table></td></tr><tr><td><table class="x6k" cellpadding="1" cellspacing="0" border="0" width="100%"><tr><th id="j_id0" width="1%" nowrap="nowrap" class="x75">Details</th><th id="j_id_jsp_1566647018_3:acctTable:j_id_jsp_1566647018_16" class="x75 xaf">Name</th><th id="j_id_jsp_1566647018_3:acctTable:j_id_jsp_1566647018_18" class="x75 xaf">Active</th><th id="j_id_jsp_1566647018_3:acctTable:j_id_jsp_1566647018_20" class="x75 xaf">Actions</th></tr><tr><td headers="j_id0" class="x6v xat" nowrap="nowrap"><div><a onclick="return _submitHideShow('acctForm',1,'hide','j_id_jsp_1566647018_3:acctTable','j _id_jsp_1566647018_3:acctTabledd0','0')" href="#" id="j_id_jsp_1566647018_3:acctTabledd0"><span title="Select to hide information" class="x9q">▼</span></a><a onclick="return _submitHideShow('acctForm',1,'hide','j_id_jsp_1566647018_3:acctTable','j _id_jsp_1566647018_3:acctTabledd0','0')" href="#" class="xi">Hide</a></div></td><td headers="j_id_jsp_1566647018_3:acctTable:j_id_jsp_1566647018_16" class="x6v xat">Name removed for privacy</td><td headers="j_id_jsp_1566647018_3:acctTable:j_id_jsp_1566647018_18" class="x6v xat">true</td><td headers="j_id_jsp_1566647018_3:acctTable:j_id_jsp_1566647018_20" class="x6v xat"><a onclick="submitForm('acctForm',1,{source:'j_id_jsp_1566647018_3:acctTabl e:0:j_id_jsp_1566647018_21'});return false;" class="xi" href="#">Close</a></td></tr><tr><td headers="j_id0" colspan="4" class="x79 xat"><div class="x9m"><h3 class="x65">Account Details</h3><div>Bill Cycle: Independant<div></div>Created: 12/15/2006<div></div>Last Modified: 12/15/2006</div><div class="x9m"><h4 class="x65">Plans</h4><div id="j_id_jsp_1566647018_3:acctTable:0:j_id_jsp_1566647018_32"><table cellpadding="0" cellspacing="0" border="0" width="50%" summary=""><tr><td><table class="x6k" cellpadding="1" cellspacing="0" border="0" width="100%"><tr><th scope="col" class="x75">Type</th><th scope="col" class="x75 xaf">Extension</th><th scope="col" class="x75 xaf">DID Number</th><th scope="col" class="x75 xaf">Active</th><th scope="col" class="x75 xaf">Actions</th></tr><tr><td class="x6v xat">Basic 250</td><td class="x6v xat">5112</td><td class="x6v xat">(908) 604-0215</td><td class="x6v xat">true</td><td class="x6v xat"><a onclick="submitForm('acctForm',1,{source:'j_id_jsp_1566647018_3:acctTabl e:0:j_id_jsp_1566647018_32:0:j_id_jsp_1566647018_43'});return false;" class="xi" href="#">View</a></td></tr></table></td></tr></table><input type="hidden" name="j_id_jsp_1566647018_3:acctTable:0:j_id_jsp_1566647018_32:rangeStar t" value="0"></input></div></div></div></td></tr></table></td></tr></table> <input type="hidden" name="j_id_jsp_1566647018_3:acctTable:rangeStart" value="0"></input></div>]]></fragment> <fragment><![CDATA[<span id="_acctForm_Postscript"><input type="hidden" name="javax.faces.ViewState" value="!-4bdfb93a"></input><input type="hidden" name="event"></input><input type="hidden" name="source"></input><input type="hidden" name="partial"></input><input type="hidden" name="value"></input><input type="hidden" name="state"></input></span>]]></fragment> Thanks, Tim -----Original Message----- From: Adam Winer [mailto:[EMAIL PROTECTED] Sent: Thursday, September 13, 2007 12:46 PM To: MyFaces Discussion Subject: Re: [Trinidad] tr:table PPR failing On 9/13/07, Adam Winer <[EMAIL PROTECTED]> wrote: > On 9/13/07, Andrew Robinson <[EMAIL PROTECTED]> wrote: > > Timothy, > > > > I stripped the page and the AJAX down to the ID attributes only > > (FYI I used this set of commands with VIM to do this: > > %s/></>\r</g | %s/^.\+\(id="[^"]\+"\).*/\1/ | %s/^[^i].\+\n// | sort > > ) > > Can I get you on permanent retainer for VIM-editing? :) > > > Here are the results: > > > > Page: > > id="acctPage:acctTable" > > id="acctPage:acctTable:j_id_jsp_1566647018_17" > > id="acctPage:acctTable:j_id_jsp_1566647018_19" > > id="acctPage:acctTable:j_id_jsp_1566647018_21" > > id="acctPage:acctTable__xc_ha" > > id="acctPage:acctTable__xc_sa" > > id="acctPage:acctTabledd0" > > id="j_id0" > > > > AJAX response: > > id="_acctForm_Postscript" > > id="acctPage:acctTable" > > id="acctPage:acctTable:0:j_id_jsp_1566647018_33" > > id="acctPage:acctTable:j_id_jsp_1566647018_17" > > id="acctPage:acctTable:j_id_jsp_1566647018_19" > > id="acctPage:acctTable:j_id_jsp_1566647018_21" > > id="acctPage:acctTable__xc_ha" > > id="acctPage:acctTabledd0" > > id="j_id0" > > > > As you can see, the following items in the AJAX were not in the page: > > id="_acctForm_Postscript" > > id="acctPage:acctTable:0:j_id_jsp_1566647018_33" > > > > Looking at your page source, there is no form element. The form is > > required AFAIK. This may be just because you didn't provide the full > > source though. > > I suspect so... the submission wouldn't have gotten far at all > without a form element. The "postscript" in the PPR reply > is in fact part of the form. > > It looks as though the issue is exactly related to trying to get that > expanded row to show up, since the one missing ID is ":0:" > (that is, the first row of the table). Lemme try this locally. Ech, ignore that commentary. Diffing the full set of IDs isn't really relevant here: PPR can, of course, introduce new IDs. It just can't introduce new *top* IDs - each fragment has to point to an existing ID. We've got two fragments in here: <div id="acctPage:acctTable"> <span id="_acctForm_Postscript"> And these do seem to be in the page already. But even if they weren't, it seems that the current JS code would simply drop them and move on. Tim, could you by any chance use FireBug's JS debugger to step through TrPage.prototype._handlePprResponse()? It's not clear where this JS error is coming from. (FWIW, the basic table row-disclosure demo seems to be working fine for me, at least on FF (haven't tested IE)). -- Adam