我试图将Application.cfc
转换为脚本。原来有这个:
<cfcomponent displayname="Application" output="false">
<cfset this.name = "testing">
<cfset this.applicationTimeout = createTimeSpan(0,1,0,0)>
<cfset this.sessionManagement = true>
<cfset this.sessionTimeout = createTimeSpan(0,0,30,0)>
<cfsetting requesttimeout="20">
...
我无法弄清楚如何将cfsetting
标记转换为脚本。以下尝试不起作用:
setting requesttimeout="20"; // throws a "function keyword is missing in FUNCTION declaration." error.
setting( requesttimeout="20" ); // throws a "Variable SETTING is undefined." error.
看起来Railo可能会支持它(link),但我找不到ColdFusion's documents
中cfsetting
标记的等价物
答案 0 :(得分:23)
没有一个。通常情况下,我建议为此提交ER,但已经存在。我推荐的是放入CFM文件并使用include来将其带入。
答案 1 :(得分:8)
试一试
<cfscript>
createObject( "java", "coldfusion.tagext.lang.SettingTag" ).setRequestTimeout( javaCast( "double", 20 ) );
</cfscript>
或者
<cfscript>
createObject( "java", "coldfusion.runtime.RequestMonitor" ).overrideRequestTimeout( javaCast( "long", 20 ) );
</cfscript>
其中20是您的cfsetting requesttimeout值
答案 2 :(得分:6)
在CF11(我认为是CF10)中,按docs你可以做到:
setting enablecfoutputonly="true" requesttimeout="180" showdebugoutput="no";
答案 3 :(得分:4)
这些cfml脚本:
<cfsetting enablecfoutputonly="true" />
<cfsetting requesttimeout="60" />
<cfsetting showdebugoutput="false" />
应该在cfscript中工作:
createObject( "java", "coldfusion.tagext.lang.SettingTag" ).setEnablecfoutputonly(true);
createObject( "java", "coldfusion.tagext.lang.SettingTag" ).setRequestTimeout(javaCast( "double", 60 ));
createObject( "java", "coldfusion.tagext.lang.SettingTag" ).setShowdebugoutput(false);
答案 4 :(得分:0)
setting.requesttimeout="3000";
这应该有效