我已经做了一些探索和反复试验,但我没有想出解决这个问题的方法。
我有这样的文件夹结构(示例)
- 应用程序.cfc
- 对象\
- 对象.cfc
- 实用程序\
- 实用程序.cfc
- API\
- 资源\
- 索引.cfm
- 应用程序.cfc
- 资源\
我有一个指向 API 文件夹 (http://api.site.com) 的站点和另一个指向整个根目录 (http://site.com)
来自 Api\Resource\index.cfm。我正在尝试在 Objects\Object.cfc 上创建对象()。我在 CF Admin 或 API\Application.cfc 中使用 this.mappings["/SiteRoot"] = "C:\wwwroot" 设置了一个映射。在 index.cfm 中,我执行 createObject("component","SiteRoot.Objects.Object")。这可以正确访问 Object.cfc。
我遇到的问题是它失败了,因为 Object.cfc 仅通过 createObject("component","Utilities.Util") 实例化了 Utilities\Util.cfc。错误是找不到 Utilities.Util。
在最底部的根目录中还有其他文件,显然可以毫无问题地调用 Object.cfc,因为它自然地进入了 Utilities 文件夹。
有什么建议或者我真的需要完全从这个根目录中删除 API 文件夹吗?
谢谢!
更新 它还没有让我回答我自己的问题,但我想在其他人插话之前在这里发帖。
尽管重新启动了应用程序并重新启动了应用程序服务器,但它仍然无法正常工作。然后突然间,它就像我预期的那样正常工作。Object.cfc 可以根据 Util.cfc 的相对路径正确找到它。
我向那些做出回应的人投了赞成票,因为他们是完全可行的替代方案和解决方案,如果这不是刚刚开始工作的话,他们会选择其中的一个。恶魔,我告诉你。恶魔。
谢谢!