Despite what people have said, FB4 is unable to catch exceptions arising
from invalid circuits or fuseactions.  This makes sense when you think about
it, if you know how things work internally.  A sample request goes like this
(roughly):

- Application.cfm runs
- index.cfm runs and includes the runtime
- the runtime does some preprocessing
- the runtime calls the loader to load the XML files, if needed
- the runtime passes the circuit and fuseaction name to the parser to build
the parse file, if needed, and saves it to the 'parsed' directory
- the runtime executes the parse file
- the runtime returns to index.cfm
- OnRequestEnd.cfm runs

You can probably see the issue.  The runtime needs to know the circuit and
fuseaction to hand to the parser to generate the parse file.  If it doesn't
have valid info, it pukes, and generates the exception you included.  Your
processError plugin is rolled into the parse file, so it can only execute
during actual request execution, which is far to late to catch invalid
circuit and fuseaction exceptions.

If you need to catch this type of exception (and you should), you have to do
it with a CFTRY..CFCATCH in your index.cfm, or via a CFERROR tag, either in
index.cfm or Application.cfm.

Cheers,
barneyb

> -----Original Message-----
> From: Michael T. Tangorre [mailto:[EMAIL PROTECTED]
> Sent: Thursday, June 17, 2004 4:54 PM
> To: CF-Talk
> Subject: FB4 catching fusebox exceptions
>
> In the processError phase I have a plugin called
> "fuseboxExceptions". In
> that file I have:
>
> <cfcatch type="fusebox">
> <cfoutput>
> <cfdump var="#cfcatch#" />
> <cfabort>
> </cfoutput>
> </cfcatch>
>
> When I put in an invalid fuseaction in the URL it should get
> caught and the
> cfcatch structure should dump to the screen but instead I get
> the standard
> CF error page  (below):
>
> "You specified a Fuseaction of junkVal which is not defined
> in Circuit main.
> "
>
> Can any FB4 people see my problem?
>
> Thanks,
>
> Mike
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings] [Donations and Support]

Reply via email to