我每天都会收到错误Element XMLZONE is undefined in REQUEST
几次。
PageDisplay.cfm 调用 request.xmlzone ,通过 ZoneManager.cfm 页面设置,使用以下(缩减)代码< / p>
<cfscript>
variables.aZoneInfo = XmlSearch(application.xmlZones, "//zone[position() = 1]");
try {
request.xmlZone = ToString(variables.aZoneInfo[1]);
}
catch(any expt)
{
variables.objZoneDAO = CreateObject("component", "#application.sComponentDir#ZoneDAO").init(application.sDSN);
variables.objZoneDAO.Read(variables.objZone, 1); }
</cfscript>
现在,XML永远不会改变,所以值得将XML文件/节点作为变量添加到 PageDisplay.cfm 吗?我也想知道它失败的原因 - 任何原因?
谢谢,
JJ
答案 0 :(得分:2)
好吧,如果对ToString(variables.aZoneInfo[1]);
的调用失败,则request.xmlZone
将无法设置。令人怀疑的是toString()
本身会失败,但如果variables.aZoneInfo
不是一个至少包含一个元素的数组,那么这会让你感到悲伤。你应该检查这个,而不是假设它。
如果设置request.xmlZone
至关重要,那么你需要在catch块中做比你现在做的更多的事情。至少你应该记录被捕获的异常,这样当你去“我想知道为什么会这样?”你有一个日志可以参考。
我怀疑您的申请已超时,当您执行xmlSearch()
时,application.xmlZones
不包含您认为包含的内容。但这是猜测。