应用程序之间可以共享CFC吗?

时间:2018-10-31 21:07:08

标签: coldfusion coldfusion-2016 coldfusion-2018

我正在运行多个应用程序(网站),这些应用程序之间使用通用的CFC,例如用于字符串格式设置和文本解析。

我发现很难在多个站点上更新相同的功能,并且希望拥有一个通用的CFC库,任何ColdFusion应用程序都可以使用该库。如果CFC库的位置可以在任何地方(在同一服务器上,或者在另一台服务器上或在云中),那将是很好的。

查看文档尚不清楚这是否可行以及如何实现。如果没有,我们在跨应用程序的代码重用方面有什么选择?谁能指出我正确的方向?

2 个答案:

答案 0 :(得分:3)

假设您的CFC是自定义标签,并使用有关自定义标签位置的文档。 Here is one

这是该链接中的一些文字。

存储自定义标签页

  

您必须将自定义标签页存储在以下任意一项中:

The same directory as the calling page
The cfusion\CustomTags directory
A subdirectory of the cfusion\CustomTags directory
A directory that you specify in the ColdFusion Administrator

换句话说,如果您在ColdFusion管理员中为自定义标签指定了一个位置,则该位置上的所有自定义标签和CFC将可用于服务器上的所有应用程序。

答案 1 :(得分:0)

要在任意位置放置一个单独的文件夹以容纳公用/共享的CFC,您所需要做的就是在Application.cfc文件中创建一个映射,然后使用该映射来引用CFC并为其创建实例。

在Application.cfc中执行以下操作:

<cfset this.mappings["/sharedcfc"] = "absolutepath\to\sharedfolder e.g. C:\Code\CFC" />

要在应用程序代码中使用CFC时,请执行以下操作:

<cfset MyCFCInstance = New sharedcfc.folder.nameofcfc() />

现在,您可以在公共区域中拥有用于各种应用程序的多功能CFC。真是救命啊!