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
dturkeldturkel 

Nested apex:repeat not allowed with table tags

Hello,

 

I'm trying to render a complex value object (not an sObject) that has nested lists.

When I try to nest the <apex:repeat>, I'm not allowed to save my VF page due an error, "The element type table must be terminated by the matching end-tag </table>.  Unfortunately, it is properly ended. It seems like there is some bad parsing, or rules around the use of apex:repeat.  Has anyone else had this problem, and are there any reasonable solutions?

 

<apex:page standardController="Account" 
	extensions="RTEquipmentOnServiceLocationController" 
	showHeader="false" 
	standardStylesheets="true">
	
	<apex:stylesheet value="{!$Resource.DetailPageVFLayoutCSS}"/>
	
    <table id="EquipmentTable" border="1">
    	<apex:repeat value="{!equipmentList}" var="equipmentItem" id="theEquipmentRepeat">
    		<tr id="EquipmentRow">
	    		<td>
                  <apex:outputText value="{!equipmentItem.SerialNumber}"/>
            	</td>
          		<td>
                  <apex:outputText value="{!equipmentItem.EquipmentStatus}"/>
              	</td>
              	<td>
	                 <apex:outputText value="{0,date,yyyy-MM-dd}">
	                  	<apex:param value="{!equipmentItem.EquipmentInstallDate}"/>
	                  </apex:outputText>
              	</td>
              	<td>
                  	<apex:outputText value="{!equipmentItem.EquipmentType}"/>
              	</td>
              	<td>
                  	<apex:outputText value="{!equipmentItem.EquipmentMake}"/>
              	</td>
              	<td >
                  	<apex:outputText value="{!equipmentItem.EquipmentModel}"/>
              	</td>    
              	<td>
                  	<apex:outputText value="{!equipmentItem.EquipmentDescription}"/>
              	</td>
    		</tr>
    		<tr>
    			<td colspan="7">
	    			<table id="ComponentTable" border="1">
		    			<apex:repeat value="{!equipmentItem.ComponentList" var="componentItem" id="theComponentRepeat">
		    				<tr> 
		    					<td>
		    						<apex:outputText value="{!componentItem.MACAddress}"/>
		    					</td>
		    					<td>
		    						<apex:outputText value="{!componentItem.EquipmentCategoryDescription}"/>
		    					</td>
		    					<td>
		    						<apex:outputText value="{!componentItem.EquipmentOccurrenceNumber}"/>
		    					</td>
		    					<td>
		    						<apex:outputText value="{!componentItem.EquipmentComponentCode}"/>
		    					</td>
		    					<td>
		    						<apex:outputText value="{!componentItem.EquipmentPort}"/>
		    					</td>
		    					<td>
		    						<apex:outputText value="{!componentItem.EquipmentPortType}"/>
		    					</td>
		    					<td>
		    						<apex:outputText value="{!componentItem.EquipmentRatingCode}"/>
		    					</td>
		    					<td>
		    						<apex:repeat value="{!componentItem.EquipmentServiceList}" var="equipmentServiceItem" id="theEquipmentServiceRepeat">
		    							<apex:outputText value="{!equipmentServiceItem.ServiceIdentifier}"/> - 
		    							<apex:outputText value="{!equipmentServiceItem.EquipmentServiceCode}"/>
		    							<br/>
		    						</apex:repeat>	    						
		    					</td>
		    				</tr>
		    			</apex:repeat>
	    			</table>
    			</td>
    		</tr>
    	</apex:repeat>
    </table>
</apex:page>

 

dturkeldturkel

Never mind.  I was missing an ending curly brace for one of my "value" attributes, and just got back an erroneous message from SFDC.