invalidEvent override needs to override the invocation path as well as the handler and method since the invalid event handler might not be in the save invocation path as the original event being requested. (It could be in a module for that matter)
This change is what I really should have done when I submitted my original pull request for having an invalid event handler in an external location. My original fix worked for missing handlers, but not for missing events when the invocation path of the request event did not match that of the missing event handler.
Basically, the invalidEvent method needs to re-do all the logic in getRegisteredHandler and not just set in the new handler and event. getRegisteredHandler used to always just create a new ehBean, but since that bean is passed by reference all the way from the controller I HAVE to override it and not create a new one. For that reason I modified getRegisteredHandler to accept an existing ehBean to override as an optional argument.