ParameterVersionDescription
fuseactionVariableAllSets the value that your application will use to designate a fully-qualified fuseaction. In Fusebox 3, this was hardcoded to "fuseaction", but with Fusebox 4 and above you are free to use any value you like. Thus, your URLs and forms can now pass fuseactions like this:

index.cfm?method=main.welcome

Other popular values are fa and go. The default value is fuseaction.

ParameterVersionDescription
defaultFuseactionAllSets the fuseaction to run if no fuseaction is specified, such as when a user makes their first request to your application. This field is required.
precedenceFormOrURLAllAllowable values: form, url. Sets the precedence of form and url variables when they are converted to the attributes scope, in the case where a variable is defined with the same name in both the form and url scopes. The default value for this attribute is form.

modeFB4 FB4.1Allowable values: development, production. Provides a way to toggle between development and production mode. In development mode, the XML files are reparsed on every request. This also means that the Fusebox memory structures are rebuilt on each request. You should set the model to development while creating or maintaining your application. Doing so will let you see your changes applied as you make new requests to your application. In production mode, the XML files are only reparsed if they are newer than the version that Fusebox is holding in memory. This results in a significant performance increase when in production mode. Default is development. Note: development mode is not thread safe, so it is unsuitable for developing AJAX applications.

modeFB5Allowable values: development-circuit-load, development-full-load, production. Provides a way to toggle between development and production modes. In development-full-load mode, both the fusebox.XML and circuit.xml files are reparsed on every request. This also means that the Fusebox memory structures are rebuilt on each request. This mode is the equivalent to the FB4 development mode and is not thread safe. In development-circuit-load mode, only the circuit.xml files required are reparsed on every request. This new mode does not load the fusebox.xml file and does not re-initialize the framework itself, but it does reload any circuit.xml files required by the current request (if they have changed) and re-parse the requested fuseactions. This removes the performance hit involved with re-initializing the framework CFCs during regular development mode and is also thread safe, so it is suitable for developing AJAX applications.

osdelimiterFB4 FB4.1Lets you set the operating system delimiter for file paths. In Fusebox 5 the parameter is ignored and effectively set to “/”.
passwordAllLets you set a password that can be included in a URL and allows you to perform some basic maintenance on your Fusebox 4 application. If not set to an empty string, then the password is required when specifying modal settings on the URL. Example:

&fusebox.password=stancox&fusebox.load=true

will force a reload of fusebox.xml

Example:

&fusebox.password=stancox&fusebox.parse=true

will force a reparse of the requested fuseaction.

Example:

&fusebox.password=stancox&fusebox.execute=false

will inhibit execution of the fuseaction.

When mode is set to development, load, parse and execute are set to true on each request automatically. When mode is set to production, load, and parse are set to false and execute is set to true on each request automatically. These can be over-written for a single request using the URL variables above.

ParameterVersionDescription
defaultFuseactionAllSets the fuseaction to run if no fuseaction is specified, such as when a user makes their first request to your application. This field is required.
parseWithCommentsFB4 FB4.1Allowable values: true, false. Determines whether the parsed files that Fusebox 4 generates will contain comments. The comments that Fusebox 4 generates can be very helpful, but if you want the smallest parsed files possible, you can disable this feature. Default is true. Ignored in Fusebox 5 where comments are not available in the parsed file.

parseWithIndentationFB4 FB4.1Allowable values: true, false. Determines whether the parsed files that Fusebox 4 generates will be indented when if and loop statements are processed. Default is true. Ignored in Fusebox 5 where indentation is not available in the parsed file.

conditionalParseFB4 FB4.1Allowable values: true, false. This parameter only has an effect when the application is set to development mode. If this parameter is set to true, the core files will conditionally reparse the XML files and regenerate the parsed files if one of several conditions are met, including whether the XML files have changed since the last time the parsed file was generated, the presence of a parsed file for the fuseaction, the currency of the core files, and the currency of the plugin files. If this parameter is false, the core files will regenerate a parsed file on every request (again, this only has an effect when in development mode). Default is false. Ignored in Fusebox 5.

scriptLanguageFB4 FB4.1Sets the scripting language for the Fusebox 4 application. Some possible values could be php or cf5. Default is cfmx. Ignored in Fusebox 5.

scriptFileDelimiterAllDetermines which file extension will be used when referring to files (both fuses and parsed files). Default is cfm.

maskedFileDelimitersAllAs described above, when a circuit refers to a file without a delimiter, the scriptFileDelimiter is appended. The maskedFileDelimiters describes which extension, if found at the end of a file reference, should be left as is (masked) from the translation. You can use * to mask all files so that no scriptFileDelimiter is appended at all. Default value is the literal list "htm,cfm,cfml,php,php4,asp,aspx"

useAssertionsFB4.1New in Fusebox 4.1, but dropped in Fusebox 5. This parameter enables or disables the use of assertions. Setting this to false will cause the core files to skip the creation of assertion code when the parsed files are generated. Assertions are covered in detail later in this book.

ignoreBadGrammarFB4.1New in Fusebox 4.1, but ignored in Fusebox 5. Setting this parameter to true will instruct the core files to ignore unrecognized XML elements and attributes in the circuit.xml files. When set to false, the core file will raise an exception of type fusebox.badGrammar when it encounters unrecognized XML elements and attributes.

characterEncodingAllAllows you to set the character encoding that Fusebox 4 includes in the parsed files. This is very useful to internationalize your application. Default is UTF-8.

allowlexiconFB4.1::TODO:: Lexicons are implemented differently in FB5 and this is ignored.

parsePathFB5.1You can override where the parsed files are generated. The default value is "parsed/". If you specify a relative path, Fusebox will create / use that directory relative to your application root. If you specify an absolute path, Fusebox will create / use that directory relative to your webroot or as resolved via mappings.
pluginsPathFB5.1You can override where the plugins are located. The default value is "plugins/". If you specify a relative path, Fusebox will use that directory relative to your application root. If you specify an absolute path, Fusebox will use that directory relative to your webroot or as resolved via mappings. This allows you to share plugins easily across multiple Fusebox applications. Note that the pluginsPath location can be overridden on a per-plugin basis using the path= attribute in the <plugin> tag.

errortemplatesPathFB5.1You can override where the error templates are located. The default value is "errortemplates/". If you specify a relative path, Fusebox will use that directory relative to your application root. If you specify an absolute path, Fusebox will use that directory relative to your webroot or as resolved via mappings. This allows you to share error templates easily across multiple Fusebox applications, for example having just one standard set of error templates on a server, shared by all your Fusebox applications.

lexiconPathFB5.1You can override where the lexicons are located. The default value is "lexicon/". If you specify a relative path, Fusebox will use that directory relative to your application root. If you specify an absolute path, Fusebox will use that directory relative to your webroot or as resolved via mappings. This allows you to share lexicons easily across multiple Fusebox applications. Note that the lexiconPath location can be overridden on a per-lexicon basis by specifying an absolute (or mapped) path in the XML namespace declaration.

debug FB5.1 Fusebox 5 adds a timed trace / debug option so you can see where the time is being taken inside your code. Setting the <parameter> debug to true in your fusebox.xml file will cause a trace to be displayed at the end of each request, showing the steps in the request lifecycle and the time at which each begins (in milliseconds, relative to the start of the request). At present, the loading of the framework, the compilation of the request, the execution of fusebox.appinit.cfm and fusebox.init.cfm and all <do>, <fuseaction> and <include> verbs are traced.