Coldfusion 8如何在cfscript标签中获取数据日志?

时间:2014-10-31 18:37:24

标签: coldfusion coldfusion-8

所以我有一个运行一些XML数据的cfscript标签,但是我在其中一个执行时遇到错误,它得到了它无法使用的奇怪数据,我试图找出这些数据是什么,但是我所有的试图反馈这些数据的努力失败了。有没有人知道从cfscript数据中获取数据日志的方法?

我试过了:

  • - 结束编写转储的脚本并重新启动脚本

  • - 编写转储和中止的脚本

  • - 在cfscript的末尾输入转储

    我的想法已经不多了。提前谢谢你!

1 个答案:

答案 0 :(得分:3)

以下是我的提示:

首先,以标签格式创建一个UDF - 我称之为“sdump”:

<cfunction name="sdump">
     <cfargument name="anyvar" required="true"/>
     <cfdump var="#anyvar#"/>
</cffunction>

然后在你的cfscript中进行调试时你可以做到:

<cfscript>

sdump(myProblemobject);
</cfscript>

这使您不必一直打破脚本块。我实际上将我包含在一个CFC库中,该库包含在Onrequest中加载的函数。

其次,有时cfdump对复杂的XML不起作用。它在CF 9及更高版本中已经真正智能,但我记得CF8并不总是喜欢复杂的XML。在这种情况下,你必须使用你的noggin。

例如,尝试在XML对象本身上使用toString()并将其转储到源代码中,如tmpvar = toString(myXml);中所示。如果将导致问题的特定节点拆分为自己的小xml对象,这会更有用。然后使用dump或(如果转储失败)尝试“writeoutput();” - 就像cfscript的cfoutput一样 - 就像这样:

<cfscript>
   xmlTmp = toString(myXml);
   writeoutput(xmlTmp);
</cfscript>

按属性和节点逐行遍历xml属性可能很麻烦,但它可能比通过原始XML查找问题的eyball更容易。

还要记住,您可以使用CF本机的各种isXML()函数(isXML(),isXMLAttribute()等)来验证XML文档或var。不确定CF8中的列表是什么样的。祝你好运 - 我担心这些问题总是反复试验。 :)

相关问题