So in my last post I talked about the _cf_nodebug parameter and how it can be used for disabling ColdFusion request debugging for single requests. Today I'm announcing a new Firefox extension and servlet filter that allow you to disable request debugging without appending the _cf_nodebug parameter to your URL. Install the servlet filter on your development server and the extension in Firefox and you can easily disable debugging for requests made through Firefox as needed via a nice little status bar icon. You can find out more and see screen shots at cfnodebug.riaforge.org.
Why did I build this?
We use shared development servers with ColdFuison request debugging enabled where I work. I've been developing some pretty CFC heavy, framework based applications on these servers and have started to tire of the 30 second page loads every time I need to reset my application. Even when these applications are loaded they are still sluggish, mainly due to the overhead associated with ColdFusion request debugging. So I built this extension to make my development time in a shared environment a little less frustrating. Once I had it built I thought other may have some use for it, even for local development, so I thought I'd share.
Why a servlet filter?
For security reasons Firefox does not allow you to modify a request URL via an extension. If it did, the extension would just append _cf_nodebug=true to the requested URL's query string and there would be no need for a servlet filter. Firefox does, however, let you add custom request headers, so what the extension does is send a custom "X-CF-NoDebug" header. The servlet filter checks for this header, and if found adds the _cf_nodebug parameter to the query string via a request wrapper. Thus, by the time the request gets to ColdFusion, it appears that _cf_nodebug was passed to the request on the URL. Note that this means your URL scope will be polluted with the _cf_nodbug variable. In most cases this should not be an issue, but something to be aware of none-the-less.
So that's it. Yet another ColdFusion debugging related Firefox extension. Enjoy!