Question

I'm trying to convert an Application.cfc to script. The original had this:

<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">
     ...

I can't figure out how to convert the cfsetting tag to script. The following attempts don't work:

setting requesttimeout="20"; // throws a "function keyword is missing in FUNCTION declaration." error.
setting( requesttimeout="20" ); // throws a "Variable SETTING is undefined." error.

It looks like Railo may be supporting it (link), but I can't find an equivalent for the cfsetting tag in ColdFusion's documents

Was it helpful?

Solution

There isn't one. Normally I'd suggest filing an ER for this, but there already is. What I'd recommend is putting into a CFM file and using include to bring it in.

OTHER TIPS

Give this a try

<cfscript>
createObject( "java", "coldfusion.tagext.lang.SettingTag" ).setRequestTimeout( javaCast( "double", 20 ) );
</cfscript>

or this

<cfscript>
createObject( "java", "coldfusion.runtime.RequestMonitor" ).overrideRequestTimeout( javaCast( "long", 20 ) );
</cfscript>

where 20 is your cfsetting requesttimeout value

In CF11 (and I think CF10), per the docs you can do:

setting enablecfoutputonly="true" requesttimeout="180" showdebugoutput="no";

These cfml scripts:

<cfsetting enablecfoutputonly="true" />
<cfsetting requesttimeout="60" />
<cfsetting showdebugoutput="false" />

should work in cfscript as these:

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);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top