Actually, JErrorPage should *NOT* be triggered directly within a component.  It is the top level exception handler used by the application basically for all uncaught exceptions.  What is going on here is just fine.