【发布时间】:2021-09-24 17:09:25
【问题描述】:
我使用 CommandBox 重新启动了我的 CF2018 服务器,我猜我之前的设置都没有保存。我已经尝试了我能想到的一切,但无法克服这个错误:
找不到 ColdFusion 组件或接口查询。
var config_qry = new Query(datasource = this.dsn); //在这一行出现错误
config_qry.setSQL('UPDATE t_table SET col1 = cast(:newConfig as json) WHERE default_url like :default_url');
我很确定这是我的 CFAdmin 中的一个设置不正确,但无法确定它可能是什么。我已验证 DSN 正常工作,这不是问题。似乎关键字“Query”没有被识别为冷融合词,因此它正在寻找具有该名称的组件。如果我简化它并以这种方式尝试,我会得到同样的错误。
var config_qry = new Query();
我不确定还可以尝试什么。感谢您的帮助!
【问题讨论】:
-
Query.cfc 组件从 {cf_root_path}\cfusion\CustomTags 加载。查看 CF Admin => Extensions => Custom Tag Paths => Current Custom Tag Paths 并查看该路径是否存在。如果没有,请尝试添加它...
-
刚刚安装了 CF2018 的测试命令框,添加的路径如下所示 C:\{commandbox_root}\server\{BigLongServerID}\adobe-2018.0.12.328566\WEB-INF\cfusion\CustomTags
-
您似乎正在使用 Adobe 的 Query.cfc 自定义标签,并且在您的 cfengine 上找不到该组件。如果使用 new com.adobe.coldfusion.query() 调用它会发生什么?或者您的映射错误或组件丢失。此外,这种类型的查询变得过时了。考虑使用 cfqueryExecute() 尝试更现代的 cfscript 方法。
-
或 queryExecute()。 customTag 路径可能丢失或错误,因为 Query.cfc 应该可以开箱即用,因为安装程序会自动添加 cfc 和路径。如果它不起作用,首先要看的是扩展屏幕中的路径。如果路径丢失或错误,com.adobe.coldfusion.query() 语法也会失败。
-
哈,哈!那成功了。使用
帮助我找到了 CustomTags 文件夹所在的位置,一旦我添加了该 CustomTag 路径,一切都会重新启动并运行。非常感谢您的帮助!
标签: coldfusion commandbox