< FEX Integrated Error Handling Core for Fusebox 3.0 >
We think it is safe to say that every developer's desire is to create bug-free, beautiful code that never fails. Some of us might be able to attain such lofty goals. Hopefully those of you who write code this way are paid a lot of money to do so.
For the rest of us, we can expend a little bit of effort and have it appear as though we have written bug-free beautiful code that never fails. We can do this by following systematic error handling routines. Some people call this "degrading gracefully". That marketing-speak means that when something goes wrong, you do not show a big ColdFusion bomb to a site user.
But how do we implement such a solution in Fusebox? We could use a global error handler in the form of <cferror>. We could wrap the <cfinclude> of the core file in a <cftry>/<cfcatch>, but that doesn't provide circuit-level granular error handling. FEX Integrated Error Handling is the answer.
With FEX Integrated Error Handling, a specially-modified Fusebox core file catches any error that occur anywhere in your application. But the core does not make an error page for you. You get to handle errors caught by the core yourself, via the file FEX_errorCatch.cfm. The code you put in FEX_errorCatch.cfm is up to you, but we will show you some guidelines to make handling errors a breeze. The FEX core file is fully compliant with the existing Fusebox core files, and should be compliant with a produced Fusebox specification, once one is established. It adds some processing on top of the existing core, along with some new API variables. A Fusebox application running on the fusebox.org-supplied core files will run identically on the FEX core file.
This application serves as an example to the FEX Integrated Error Handling system, and will produce a number of errors to aid your understanding of the way FEX works. Occasionally, you will have to use your BACK button to get out of a dead-end; all the errors generated in this application are intentional.

