We help IT Professionals succeed at work.

Coldfusion 10 - the end-comment string of "--->" is showing on my page.

lanterv
lanterv asked
on
I was making changes to a page.  I noticed a line like;
---> ---> ---> --->
on my page.  I looked and looked and the only instance of ---> is at the end of comments.  I added a few more <!---   ---> to the code but only the original 4 still show.

A sample output of the page is;

Services Used
---> ---> ---> --->
Bridge Staffing Placed  197489
---> --->
BS Candidate,


The code is;
<div class="PanelTab" tabindex="0">Services Used</div>
	<div class="PanelContent">
		<cfdiv bind="url:dspStatusScreen.cfm?indivNum=#indivnum#">



And the div;

<!--- dspStatusScreen.cfm --->
<cfset attributes.suppresslayout2 = "yes">
<cfparam name="IndivNum" default="">
<cfif indivNum neq "" and indivNum NEQ "0">
	<!---<cfinvoke component="control.calllist.cfc.basic" method="checkEmails" indivNum="#indivNum#" returnvariable="qEmailCheck" />
	<cfoutput>
		<cfif qEmailCheck.email_home eq "">
				<div style="color:ff0000">NO HOME EMAIL ADDRESS</div>
		</cfif>
		<cfif qEmailCheck.email_work eq "">
			<div style="color:ff0000">NO WORK EMAIL ADDRESS</div>
		</cfif>
	</cfoutput>--->
	<!--- Executive Search --->
	<cfinvoke component="cfc.basic" method="getExecSearchCandStatus" indivNum="#indivNum#" returnvariable="execSrchCandInfo" />

	<cfif execSrchCandInfo.recordcount NEQ "0">
		<table>
			<tr style="font-size:14;">
				<td>Active Executive Search Status:</td>

				<cfoutput>

				<cfif trim(execSrchCandInfo.date_of_placement) NEQ "">
					<td><strong style="color:red;">Placed on Search #execSrchCandInfo.id# on #execSrchCandInfo.date_of_placement#</strong></td>
				<cfelseif trim(execSrchCandInfo.date_of_face_to_face) NEQ "">
					<td><strong style="color:red;">FTF on Search #execSrchCandInfo.id# on #execSrchCandInfo.date_of_face_to_face#</strong></td>
				<cfelseif trim(execSrchCandInfo.date_interviewed) NEQ "">
					<td><strong style="color:red;">Intv on Search #execSrchCandInfo.id# on #execSrchCandInfo.date_interviewed#</strong></td>
				<cfelseif trim(execSrchCandInfo.date_telephoned) NEQ "">
					<td><strong style="color:red;">Tel on Search #execSrchCandInfo.id# on #execSrchCandInfo.date_telephoned#</strong></td>
				<cfelseif trim(execSrchCandInfo.date_of_resume) NEQ "">
					<td><strong style="color:red;">Res on Search #execSrchCandInfo.id# on #execSrchCandInfo.date_of_resume#</strong></td>
				<cfelse>
					<td><strong style="color:red;">on Search #execSrchCandInfo.id#</strong></td>
				</cfif>
				<td>
					<input type="button" name="checklistCandidatesES" value="Checklist ES" onclick="javascript:ColdFusion.Window.show('ChecklistCandidatesES')" style="color:yellow;background:purple">
				</td>
				</cfoutput>

			</tr>
		</table>
	</cfif>

	<cfinvoke component="cfc.basic" method="getExecSearchCandStatusOffLimit" indivNum="#indivNum#" returnvariable="execSrchCandInfoOL" />
	<cfset shownStatus = "">
	<cfloop query="execSrchCandInfoOL">
		<cfif execSrchCandInfoOL.date_of_placement neq "">
			<cfif shownStatus NEQ "Gone">
				<cfset shownStatus = "Placed">
			</cfif>
		<cfelse>
		<cfif execSrchCandInfoOL.date_of_face_to_face neq "" OR execSrchCandInfoOL.date_interviewed neq "" OR execSrchCandInfoOL.date_telephoned neq "" OR execSrchCandInfoOL.date_of_resume neq "">
			<cfif shownStatus NEQ "Gone" AND shownStatus NEQ "Placed">
				<cfset shownStatus = "Presented">
			</cfif>
		</cfif>
		</cfif>
	</cfloop>
	<cfif shownStatus NEQ "">
		<table>
			<cfoutput>
				<tr>
					<td>
						<strong style="color:Green; font-weight:bold;">Executive Search #shownStatus#</strong>
					</td>
				</tr>
			</cfoutput>
		</table>
	</cfif>

	<!--- Bridge Staffing --->
	<!---  --->
	<!---  --->
	<!---  --->
	<cfinvoke component="cfc.basic" method="getContractStaffingCandStatus" indivNum="#indivNum#" returnvariable="conStaffCandInfo" />
	<!--- There are candidates on active search  vjl  2015/03/11 ticket 2500 --->
	<!--- If there is a date in DP it means SOMEONE on the search was placed. If there is a date in date_of_placement it means this candidate was placed  vjl 2015/03/11 ticket 2500 --->
	<cfif conStaffCandInfo.recordcount NEQ "0">
		<table>
			<cfif conStaffCandInfo.dp gt "">  <!--- somebody has been placed on an active search --->

					<cfif conStaffCandInfo.date_of_placement NEQ "">

				<tr align="left" style="font-size:14;">
					<td>Active Bridge Staffing Status:</td>
					<cfset attributes.csid = #conStaffCandInfo.id#>
					<cfoutput>
						<td>
							<strong style="color:red;">
							Placed
							<cfif conStaffCandInfo.status eq 'F' and conStaffCandInfo.end_Date gt "#dateformat(now(),'yyyy/mm/dd')#">
								on current active Search
							<cfelseif conStaffCandInfo.searchCloseDate NEQ "">
								on past assignment on Search
							<cfelse>
								on Search
							</cfif>
							<a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a>  (#conStaffCandInfo.date_of_placement#)
							</strong>
						</td>
					<!--- <cfelseif conStaffCandInfo.date_of_face_to_face NEQ "">
						<td>
							<strong style="color:red;">FTF on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_of_face_to_face#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.date_interviewed NEQ "">
						<td>
							<strong style="color:red;">Intv on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_interviewed#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.date_telephoned NEQ "">
						<td>
							<strong style="color:red;">Tel on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_telephoned#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.date_of_resume NEQ "">
						<td>
							<strong style="color:red;">Res on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_of_resume#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.DP eq "">
						<td>
							<strong style="color:red;">on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a>
							</strong>
						</td> --->
					<td>
						<input type="button" name="checklistCandidatesCS" value="Checklist CS" onclick="javascript:ColdFusion.Window.show('ChecklistCandidatesCS')" style="color:yellow;background:purple">
					</td>
					</cfoutput>

					</cfif>
				</tr>
			<cfelse>  <!--- nobody has been placed on an active search --->
				<tr align="left" style="font-size:14;">
					<td>Active Bridge Staffing Status:</td>
					<cfset attributes.csid = #conStaffCandInfo.id#>
					<cfoutput>
					<cfif conStaffCandInfo.date_of_face_to_face NEQ "">
						<td>
							<strong style="color:red;">FTF on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_of_face_to_face#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.date_interviewed NEQ "">
						<td>
							<strong style="color:red;">Intv on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_interviewed#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.date_telephoned NEQ "">
						<td>
							<strong style="color:red;">Tel on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_telephoned#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.date_of_resume NEQ "">
						<td>
							<strong style="color:red;">Res on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a> on #conStaffCandInfo.date_of_resume#
							</strong>
						</td>
					<cfelseif conStaffCandInfo.DP eq "">
						<td>
							<strong style="color:red;">on Search <a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfo.id#</a>
							</strong>
						</td>
					</cfif>
					<td>
						<input type="button" name="checklistCandidatesCS" value="Checklist CS" onclick="javascript:ColdFusion.Window.show('ChecklistCandidatesCS')" style="color:yellow;background:purple">
					</td>
					</cfoutput>
				</tr>

			</cfif>
		</table>
	</cfif>

	<cfinvoke component="cfc.basic" method="getConStaffingCandStatusOffLimit" indivNum="#indivNum#" returnvariable="conStaffCandInfoOL" />
	<cfset shownStatus = "">
	<cfif conStaffCandInfoOL.recordCount GT 0>
		<cfoutput>
		<cfloop query="conStaffCandInfoOL">
			<cfif conStaffCandInfoOL.date_of_placement neq "">

				<cfset shownStatus = "Placed ">

			<cfelse>
			<cfif conStaffCandInfoOL.date_of_face_to_face neq "" OR conStaffCandInfoOL.date_interviewed neq "" OR conStaffCandInfoOL.date_telephoned neq "" OR conStaffCandInfoOL.date_of_resume neq "">
				<cfif shownStatus NEQ "Placed">
					<cfset shownStatus = "Presented ">
				</cfif>
			</cfif>
			</cfif>
		</cfloop>
		<cfif shownStatus NEQ "">
			<table>
				<cfoutput>
					<tr>
						<td>
							<strong style="color:Green; font-weight:bold;">Bridge Staffing #shownStatus#&nbsp;<a href="#request.controlURL#contractstaffing/index.cfm?fa=viewCC&cfgridkey=#conStaffCandInfo.id#" target="_blank">#conStaffCandInfoOL.id#</a></strong>
						</td>
					</tr>
				</cfoutput>
			</table>
		</cfif>
		</cfoutput>
	</cfif>

Open in new window

Comment
Watch Question

Dave BaldwinFixer of Problems
Most Valuable Expert 2014

Commented:
According to the W3C http://www.w3.org/TR/1999/REC-html401-19991224/intro/sgmltut.html#idx-HTML , comments should on have two '--' and not 3 '---' of them like you're showing above.  I don't know for sure that browsers won't show it correctly but that is not the standard syntax.
HTML comments have the following syntax:

<!-- this is a comment -->
<!-- and so is this one,
    which occupies more than one line -->

White space is not permitted between the markup declaration open delimiter("<!") and the comment open delimiter ("--"), but is permitted between the comment close delimiter ("--") and the markup declaration close delimiter (">"). A common error is to include a string of hyphens ("---") within a comment. Authors should avoid putting two or more adjacent hyphens inside comments.

Author

Commented:
I appreciate your effort.  But 2 dashes is for HTML commenting.  Three dashes is for CFML.  Unless,  of course,  I missed an announcement.
Dave BaldwinFixer of Problems
Most Valuable Expert 2014

Commented:
Not necessarily... but if that's the case, then CF should be stripping those sections out before it sends the page to the browser.
Is it possible that the wrapper page for your  "dspStatusScreen.cfm" might have an issue in a comment end tag?

Sometimes CF will cache the template even though you save and publish the changes.  If you don't have access to the CF Admin to purge the template cache, try making a backup copy of your template page first.

Rename the template that you're getting the error on.
Run the app so that you get the missing template error.
Change template back to the original name.

Does the comment error still exist?
Commented:
Here's what fixed it.  I had a comment block like;
<!---this is a test
and this is still part of the test--->

There is no white space between the start or end tag and text.  When I added a space like so;
<!--- this is a test
and this is still part of the test --->

Everything is fine.
That's good to hear.

Every environment has subtle differences that can impact the simplest item...

Author

Commented:
Stumbled on the solution.