从Coldfusion 9升级到Coldfusion2021



我正在开发coldfusion9应用程序,现在我们想将我们的应用程序升级到coldfusion 2021。在这种情况下,我们想知道

  1. 如果我们将应用程序coldfusion 9升级到coldfusion2021,我们是否需要在升级后进行任何代码修改,或者简单地升级到colDFusion2021即可完成所有任务
  2. 因为coldfusion 2021有云支持,所以我们的coldfusion9代码在升级后将在云中工作。。如果它能工作,所有的代码是什么;我们需要做的配置级别修改

期待您最早的回复。。。。。

谢谢…

正如@Redtopia所说,"这取决于";。你很少能从CF x升级到CF z,因为x和z之间有多个主要版本。你的应用程序有多大?不仅仅是代码库,还有功能集合?

至于";云";,只要意识到这是一个营销术语,意思是";别人的电脑";。转换的这一部分取决于其自身的许多因素。你也在从Windows转换到Linux吗?这会带来额外的痛点。

例如,ColdFusion 10从使用JRun转换为使用Tomcat作为底层Javaservlet平台。从那时起,每一个CF版本都对Tomcat进行了升级。

有些不推荐使用的标记可能仍然有效。许多内置的JavaScript库要么已经升级,要么已经完全关闭,所以如果您使用<CFFORM>,有些可能有效,有些可能无效。CFchart的工作方式与您预期的不同。

还有一些事情CF9让你逃脱了惩罚,后来的版本变得更加严格。不正确的标记属性等。

如果你尝试转换到开源CF引擎Lucee,你将有一些额外的工作要做,以了解CF管理员与Adobe CF管理员的工作方式。这基本上是一样的,但有足够的差异,你可以在这个过程中有一个额外的学习曲线。

我们不要忘记,您还将显著升级底层JDK的版本,这可能会带来额外的麻烦。

关于代码分析器,您可能会遇到一些令人头疼的问题。我上次使用它从CF 11升级到2018年。我得到了无限多的误报,它在标签属性(secure="true")中寻找静态值,而你得到了一个变量集(secure="#isSecure#")。不确定他们是否做了什么来解决这个问题。

最后,正如Miguel所建议的,遵循迁移指南。但也要确保遵循ColdFusion锁定指南,以解决新服务器安装的许多安全问题。

我已经做过很多次了,很少像你希望的那样简单。最重要的是,在你知道什么有效,什么无效,以及完成转换需要付出多少努力之前,你必须对所有东西进行端到端的测试。

  1. 不幸的是,没有一个简单的按钮可以自动为您做到这一点。代码分析器和其他工具可能会对你有所帮助,但归根结底,这取决于你或团队中的其他人对这个代码库的了解程度。我将给你举几个例子

a。在我们的代码库中,当我们从CF 9迁移到CF 11或更高版本时,我们遇到的主要问题是cfprocparam数据类型在以前的版本中是宽松的。我们必须确保CF代码和SQL Server存储过程之间的所有数据类型匹配。这是移民过程中最痛苦的部分,但一旦我们知道我们必须做什么,事情就变得容易多了。因此,了解代码库中有多少查询与存储过程将使您了解工作级别。

因此,在同一行中,您必须查看代码并彻底测试所有页面,以确定升级后哪些区域正在崩溃。

b。像datepicker等旧库将被打破,CF 2018至少还有一项工作要做。我不知道这是否在2021年CF中得到了解决。

  1. 这取决于1。我相信,如果你把1做对了,那么2就会起作用,因为你已经通过代码问题解决了潜在的兼容性问题

奖金提示和建议

I。请考虑如何做到这一点,即本地开发或QA/QC服务器。你需要有一个游戏计划。一个单独的设置或安装只是为了迁移,这样你就不会破坏东西,也不会感到沮丧。

II。确保您为代码库创建了某种版本控制和分支,这样您就可以继续处理项目以及CF 2021迁移更改

III。最后但并非最不重要。为您的本地或QA设置获取FusionReactor for ColdFusion监控工具。我强烈推荐这个。这将解决问题,并将您的故障排除工作从几分钟、几小时减少到几秒钟。在新版本中,他们有快照视图,基本上可以将您定位到错误发生的代码,是的,实际的cfm代码。出色的功能得到了Intergral团队的充分考虑。

相关内容

  • 没有找到相关文章

最新更新