我正在将一个非常古老的应用程序(目前在CF8中运行)迁移到Lucee。但是我遇到了一个问题,似乎是某种自定义标签。
我已经尝试确保IIS中的所有虚拟目录对于旧版和新版安装都相同。并确保CFIDE和Lucee Admin中的映射和自定义标签路径相同。
但是我收到了这个错误。而且无法弄清楚如何实例化这个。 我已经找到错误代码的位置,位于utils.cfc文件的第300行
我很久没有使用自定义标签了,但是我认为它们通常会用下划线调用,代码应该更像这样
如果我去运行此应用程序的当前CF服务器,我可以找到一个cfclass文件已经被创建
来自名为cflink.cfm的文件夹中的“tags”目录,尽管似乎没有为“tags”目录映射,并且在管理员中也没有列出“自定义标签路径”。
这个应用程序始于2003年,可以想象已经成长为一堆混杂的代码,没有人知道如何实例化这个标签。
尽管这可能是递归,但考虑到它是在2004年编写的,我有点怀疑。
添加搜索截图。
我已经尝试确保IIS中的所有虚拟目录对于旧版和新版安装都相同。并确保CFIDE和Lucee Admin中的映射和自定义标签路径相同。
但是我收到了这个错误。而且无法弄清楚如何实例化这个。 我已经找到错误代码的位置,位于utils.cfc文件的第300行
![enter image description here](https://istack.dev59.com/508lH.webp)
<cf_link pageid="#LinkPageID#" Init="start">
如果这被称为自定义标签。如果我去运行此应用程序的当前CF服务器,我可以找到一个cfclass文件已经被创建
![enter image description here](https://istack.dev59.com/fNnY1.webp)
这个应用程序始于2003年,可以想象已经成长为一堆混杂的代码,没有人知道如何实例化这个标签。
你有没有在遗留代码方面的经验?你认为我应该去哪里寻找其他想法来让它能够运行?目前只有一个生产环境,如果我能让它在Lucee上运行,不仅会成为10年来从未存在过的开发环境,而且还是继续展示Lucee作为一个优秀的CFML引擎的好方法。
补充信息
Leigh问过init是否可能是jar引用,但在cflink.cfm文件中,我看到了这段代码:
<cfif Attributes.Init IS "start">
<cfset Request.PageID = Attributes.PageID>
<cfset Request.Page_Width = Variables.qParentInfo.Page_Width>
<cfset Request.Page_Height = Variables.qParentInfo.Page_Height>
<cfset Request.Page_TypeID = Variables.qParentInfo.Page_TypeID>
<cfset Request.AddPath = "">
<cfif IsDefined("Attributes.Anchor")>
<cfset Request.Anchor = Attributes.Anchor>
<cfelse>
<cfset Request.Anchor = "">
</cfif>
<cfset Request.IsInternalLink = false>
<cfexit method="EXITTAG">
</cfif>
代码中还有对cflink的引用,位于标签\cflink.cfm内部。
<cfif Len(Variables.qParentInfo.ParentID) GT 0>
<!--- Add the page title to the end of the path --->
<cfset Request.AddPath = ReplaceNoCase(Variables.qParentInfo.Nav_Title," ","_","ALL") & "/" & Request.AddPath>
<cflink init="working" pageid="#Variables.qParentInfo.ParentID#" popcode="#Attributes.popcode#">
<cfelse> ......</cfif>
尽管这可能是递归,但考虑到它是在2004年编写的,我有点怀疑。
添加搜索截图。
cfimport
调用吗?使用标签库可以做一些创意性的事情。 - Leigh<cflink...>
?也许没有。此外,虽然机会渺茫,但是..类路径或WEB-INF\lib中有自定义jar包吗? (编辑)詹姆斯 - 是的,只搜索对cflink
的非标签引用是个好主意。名称“init”让我想知道它是否是某种java标签? - Leigh