function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Mark YoungMark Young 

BUG - outputPanel inside repeat when doing ajax rerender

Hi,
 
This has been plaguing me for a couple of hours, and finally seemed to have tracked down what seems to be a bug.
 
The following code is able to reproduce my issue (create a visualforce page and copy code into it):
Code:
<apex:page standardController="Account">
<apex:form>
<apex:outputPanel id="panel1">
 <apex:commandLink rerender="panel1" value="Update panel1" />
 <table><tr>
 <apex:repeat value="{!account.Contacts}" var="act">
  <apex:outputPanel>
  <td>Bob - {!NOW()}</td>
  </apex:outputPanel>
 </apex:repeat>
 </tr></table>
</apex:outputPanel>

<apex:outputPanel id="panel2">
 <apex:commandLink rerender="panel2" value="Update panel2" />
 <table><tr>
 <apex:repeat value="{!account.Contacts}" var="act">
  <td>Fred - {!NOW() }</td>
 </apex:repeat>
 </tr></table>
</apex:outputPanel>
</apex:form>
</apex:page>

 
When clicking the second link, all is well - the panel updates and the date changes.  However, when clicking the first (with an extra output panel), I get an internal server error (such as  Error ID: 92002686-78 (-1498298025)).
 
When doing a normal postback (i.e. not using rerender) there isn't any issue.
 
I use outputPanel's reasonably frequently to show / hide blocks of html, so this is quite important.
 
Any ideas?
Mark YoungMark Young

Having revisited the issue, adding layout="none" to the outputPanel resolved the issue.  Looks like it was a layout issue inside repeat tags.

Strange that it only occurs when doing an ajax postback.

Mark

dchasmandchasman
Any time you encounter an Internal Server Error that is a salesforce bug that we need to investigate. My team actually get emails/monitoring alerts from the system each time an ISE is encountered and we're already looking at this.