如果在组件中使用以下代码:
<cfpdf action="merge" name="tender">
</cfpdf>我得到以下错误:
结束标记“”与当前父项“current”不匹配
但是,如果我将代码更改为:
<cfpdf action="merge" name="tender" />我没有错误。注意,我更改代码的唯一方法是关闭标记的方式。有谁能向我解释这是为什么,甚至更好,告诉我如何绕过这件事?
错误在CFEclipse中显示在"problems“视图中,但在服务器上运行代码时不会发生。
系统设置: Win7,运行Eclipse和CFEclipse v.1.4.3。服务器运行Coldfusion 8。
更新1:
如果我忽略了CFEclipse显示的解析错误并在服务器上运行代码,它就会像预期的那样工作。我想这表明这确实是与CFEclipse本身有关的东西,就像Peter建议的那样,而不是代码本身的问题。
以防万一,下面是函数的完整代码(请注意,这不是生产代码,我目前只是为了得到我需要的东西而进行测试):
<cffunction name="GetTenderPDF" access="remote">
<cfargument name="Info" type="String" required="true" />
<cfset var Tender = {} />
<cfset var InfoJson = URLDecode(Arguments.Info) />
<cfif Not IsJSON(InfoJson)>
<cfreturn Error(Messages.NOT_JSON) />
</cfif>
<cfset Tender = DeserializeJSON(InfoJson) />
<cfset templatePath = "templates/tenderTemplate_"&Tender.GROUP&".cfm" />
<cfheader name="Content-Disposition" value="attachment; filename=offert.pdf" />
<cfdocument format="pdf" name="mydocument">
<cfloop index="x" from="1" to="15">
<p>
lorem upsom doloras paris hilton is my hero loreum ipsom dsoio foom an to dht end of the world
will anyone actually read this probably not but let me put more realtext in so it flows a bit nicely
<cfloop index="y" from="1" to="#randRange(1,9)#">This sentence will appear a random amount of time.</cfloop>
</p>
</cfloop>
</cfdocument>
<cfdocument format="pdf" name="base">
<cfinclude template="#templatePath#" />
</cfdocument>
<!--- <cfpdf action="merge" name="tender" /> --->
<cfpdf action="merge" name="tender">
<cfpdfparam source="base" />
<cfpdfparam source="mydocument" />
</cfpdf>
<cfcontent type="application/pdf" reset="true" variable="#toBinary(tender)#" />
</cffunction>发布于 2011-08-26 13:37:28
这可能与周围的代码或<cfpdf></cfpdf>标记中的代码有关。你能显示更多的上下文吗?
https://stackoverflow.com/questions/7205254
复制相似问题