错误:在Fw1框架上找不到ColdFusion组件或接口

时间:2019-05-12 05:30:24

标签: coldfusion coldfusion-2016 fw1

这周我只是想回顾一下Fw1框架。但是,我遇到了fw1核心文件错误。屏幕下方显示我的文件夹结构,

enter image description here

在lib文件夹中,我还有一个文件夹叫做Framework。 framework文件夹还具有one.cfc和ioc.cfc文件。现在,我正在尝试在浏览器中运行我的应用程序。抛出错误。

  

找不到ColdFusion组件或接口   C:\ ColdFusion2016 \ cfusion \ wwwroot \ try \ Fw1Demo \ framework \ ioc.cfc

但是,在我的Application.cfc中,我扩展了fw1 one.cfc核心文件。

component extends="lib.framework.one" output="false" {
}

但是,我不确定为什么会引发错误。

3 个答案:

答案 0 :(得分:1)

现在,我们可以将fw1框架核心文件放在另一个文件夹中。我们不需要遵循fw1提到的文件夹结构。我的意思是framework/one.cfc & framework/ioc.cfc

但是,要使用不同的文件夹结构,需要更改framework/one.cfc中的路径。在此文件中,它们用作指向ioc.cfc文件的静态路径。我们需要更改路径。

在上述问题中,我使用了lib/framework/one.cfc & lib/framework/ioc.cfc。因此,在one.cfc文件中,需要更改以下代码,

var diComponent = 'lib.framework.ioc';

variables.framework.applicationKey = 'lib.framework.one';

默认情况下,上述变量具有以下值,

var diComponent = 'framework.ioc';

variables.framework.applicationKey = 'framework.one';

因此,在此变量中需要更新我们的路径。

谢谢

答案 1 :(得分:1)

Fw1是一个轻量级的框架,被称为约定优于配置。我们可以在Application.cfc

中进行配置

据我所知,如果要配置,请不要触摸核心文件。只需将其添加到Application.cfc

就像默认的Section,Item和reloadApplicationOnEveryRequest设置一样

variables.framework = {
        defaultSection = 'dashboard',
        defaultItem = 'default',
        reloadApplicationOnEveryRequest = false
    };

对于您的情况,您应该在Application.cfc中添加

variables.framework = { applicationKey = 'lib.framework.one'; }

仅针对特定于应用程序的配置。我没有尝试那样的配置,但是我们可以这样做。

答案 2 :(得分:0)

请尝试以下操作,而不是更改核心文件。

  1. 使用名为“framework”的 CF 管理界面为框架文件夹创建映射
  2. 在您的 Application.cfc 文件中添加/更新它 variables.framework = {diComponent = "framework.ioc"}

这样,您就不会更改核心文件并且仍然拥有您想要的内容。