Abstract class that represents an exception thrown during the processing of a ColdFusion Extension (CFX) procedure.
Exceptions of this type can be thrown by CCFXRequest Class, CCFXQuery Class, and CCFXStringSet Class. Your ColdFusion Extension code must therefore be written to handle exceptions of this type. (See the CCFXRequest::ThrowException and CCFXRequest::ReThrowException tags for details on doing this correctly.)
virtual LPCSTR GetError()
The CCFXException::GetError function returns a general error message.
virtual LPCSTR GetDiagnostic()The CCFXException::GetDiagnostics function returns detailed error information.
This function provides basic user output for exception that occur during processing.
This function provides detailed user output for exception that occur during processing.
Example
This code block shows how both functions work with ThrowException and ReThrowException.
// Write output back to the user here... pRequest->Write( "Hello from CFX_FOO2!" ) ; pRequest->ThrowException("User Error", "You goof'd..."); // Output optional debug info if ( pRequest->Debug() ) { pRequest->WriteDebug( "Debug info..." ) ; } } // Catch Cold Fusion exceptions & re-raise them catch( CCFXException* e ) { // This is how you would pull the error information LPCTSTR strError = e->GetError(); LPCTSTR strDiagnostic = e->GetDiagnostics(); pRequest->ReThrowException( e ) ; } // Catch ALL other exceptions and throw them as // Cold Fusion exceptions (DO NOT REMOVE! -- // this prevents the server from crashing in // case of an unexpected exception) catch( ... ) { pRequest->ThrowException( "Error occurred in tag CFX_FOO2", "Unexpected error occurred while processing tag." ) ; } }