Caching Railo中的CFC缓存问题

Caching Railo中的CFC缓存问题,caching,cfc,railo,cfml,Caching,Cfc,Railo,Cfml,我在缓存CFC中的特定函数时遇到问题,无论我做什么 以下是场景: CFC在应用范围内通过ColdSpring实例化。该网站是活的,一切都很好。 我想在这个CFC中更改一个名为“productSearch”的函数。 无论我做什么,都不会尊重任何改变 我通常重启应用程序来重新初始化CFC,但这并没有什么不同。 我尝试过创建一个测试页面,并在本地显式实例化CFC,但没有任何区别。 我重新启动了Railo,重新启动了Tomcat,重新启动了服务器,但都没有用 事实上,我唯一能看到我所做的更改的时候,就是

我在缓存CFC中的特定函数时遇到问题,无论我做什么

以下是场景:

CFC在应用范围内通过ColdSpring实例化。该网站是活的,一切都很好。 我想在这个CFC中更改一个名为“productSearch”的函数。 无论我做什么,都不会尊重任何改变

我通常重启应用程序来重新初始化CFC,但这并没有什么不同。 我尝试过创建一个测试页面,并在本地显式实例化CFC,但没有任何区别。 我重新启动了Railo,重新启动了Tomcat,重新启动了服务器,但都没有用

事实上,我唯一能看到我所做的更改的时候,就是我真的重命名了这个函数。这样做的事实表明CFC文件本身没有被缓存,否则新命名的函数将不可用

而且,这只发生在生产服务器上。如果我在我的开发服务器上做了完全相同的更改,那么一切都会按预期进行

我以前从未见过这种情况,我有点不知所措。 我真的没有太多的代码来显示这些代码是否有用-对于测试,该函数现在包含以下内容:

<cffunction name="productSearch" access="public">
<cfdump var="#CGI#">
<cfabort>
</cffunction>
这失败了,但如果我将其重命名为“productSearch2”,它将正常工作。为了澄清,当我说“fails”时,我的意思是运行函数时,它好像根本没有改变过一样——在它之前有各种各样的逻辑,返回一个结构


Railo是否在任何地方或其他地方存储CFCs的解析版本?我就是不明白这是怎么回事

事实证明,这个问题与我在代码中使用的方法有关

我将组件拆分为可管理的.cfm文件,然后使用DirectoryList和CFInclude从base.cfc文件中包含这些文件


这对我来说非常有效,但是在这个例子中,最近的dev和live版本的合并给我留下了一个.orig文件,因为我的文件是使用DirectoryList包含的,在加载.cfm版本后,.orig似乎被包含在组件中,从而覆盖了这两个文件中存在的任何函数。这就是为什么重命名函数有效

不确定发生了什么,但请检查您的WEB-INF/railo/cfclasses目录-其中的某个地方将有为CFC生成的.class文件-检查是否正在重新生成?如果您在railo Google Group上问这个问题,您会得到更快的答案:Peter-谢谢!我查看了一下,它正在被重新创建,但另一个文件也将我引向了正确的方向。回答如下。Adam-我不太确定这是Railo特有的,我无法在我的dev Railo服务器上重新创建,所以尝试测试ACF没有多大意义。现在找到了答案,我想可能是Railo特有的,因为我很确定如果ACF表现出这种行为,我过去会遇到这种情况。事实上,刚开始输入我的答案——我想我可能偶然发现了这个问题,它既不是Railo特有的,也不是ACF特有的——但事实上,就像经常发生的情况一样,我的代码。哦,天哪。你现在在通话中添加了一个过滤器*.cfm,对吗?的确。。。之前我过滤掉了*.cfc-我应该知道这会引起问题!