Coldfusion 尽管禁用了Enable Null支持,但在cf2018中启用了Null

Coldfusion 尽管禁用了Enable Null支持,但在cf2018中启用了Null,coldfusion,null,coldfusion-2018,Coldfusion,Null,Coldfusion 2018,我们正在将一些应用程序从CF10升级到CF2018 在CF2018上,我们在ColdFusion Administrator中取消选中了“启用Null支持”,当我们输出enableNullSupport的值时,我们可以看到它被设置为否。但是,我们仍然看到表明已启用Null的行为 e、 g.当我们使用未初始化的属性(如FirstName)创建对象时,以前为true的表达式getFirstName()eq”“,现在为false,IsNull(getFirstName())为true 关于这一问题的文

我们正在将一些应用程序从CF10升级到CF2018

在CF2018上,我们在ColdFusion Administrator中取消选中了“启用Null支持”,当我们输出
enableNullSupport
的值时,我们可以看到它被设置为否。但是,我们仍然看到表明已启用Null的行为

e、 g.当我们使用未初始化的属性(如FirstName)创建对象时,以前为true的表达式
getFirstName()eq”“
,现在为
false
IsNull(getFirstName())
为true

关于这一问题的文章说:

现在,在ColdFusion应用程序中,可以为 变量,如下所示:

<cfset price = null>

但如果您在(选择了CF2018)尝试这一行,您将得到-变量NULL未定义


看来有关支持Null的文档有误导性。

我联系了Adobe支持部门,他们能够复制这个问题,并回来确认这是一个bug。
他们给我发了一个补丁,解决了这个问题。该修补程序将包含在cf2018的未来更新中

尝试运行代码,如果启用null,该代码应该可以工作。如果失败了,那么可能会有其他一些组件的变化影响您。您正在测试2018年的最新更新吗?谢谢。我目前只能使用本地docker vagrant容器(根据图像eaps docker coldfusion.bintray.io/cf/coldfusion:latest构建)进行测试。如果启用了Null支持,则运行OK,但在其他情况下会给出“变量Null未定义”,因此,请澄清一下,补丁修复了哪些问题?同样的情况是否也适用于CF2016?我们遇到的主要问题是:当设置“启用空支持”时,对于未初始化的属性,
getProperty()eq”“
返回FALSE。安装Adobe的修补程序后,表达式返回TRUE-因此问题已得到解决。我不知道这是否适用于CF2016