Coldfusion:相互矛盾的cfdump语句

时间:2011-05-17 15:21:05

标签: coldfusion coldfusion-9

我有一个查询l.q. l是var范围:

var l = {};

如果我转储l:

writeDump(var:l, abort:true);

我得到dump of l

您可以看到q(l.q)显示[undefined struct element]。但是,如果我这样做:

writeDump(var:isQuery(l.q), abort:true);

我得到的是输出?倾倒l.q.recordCount返回1.

如果我转储l.q我收到错误:错误类型 java.lang.ArrayIndexOutOfBoundsException:[N / A]。

这让我非常头疼,因为在我的网站上,我变量随机随意消失。

有什么想法可以在这里发生什么?在Windows Server 2005上运行的CF9.0.1 Ent。

2 个答案:

答案 0 :(得分:0)

看起来你填充的l.q变量无法正常工作。如何填充l.q?

如果您使用l = {}作为“本地”范围替换 - 请不要ColdFusion 9在函数内部已经有一个局部范围,您可以将其转储。

答案 1 :(得分:0)

这些转储是否在同一个地方?请记住,如果执行不返回任何内容的查询(例如更新或删除)但使用name参数,则该变量将设置为undefined。听起来这可能发生在这里。