What you don't understand is the fact
RequestLifecycle.end() has not been designed to throw any exception except IllegalStateException if you check the signature of the method but this exception never occurs in practice, if it occurs it means that
RequestLifecycle.begin/RequestLifecycle.end were not in a try/finally block which should never be the case.
So knowing that you can either
- Throw a RuntimeException but if you do that it would mean that you did not implement properly the method ComponentRequestLifecycle.endRequest as no exception should be thrown from these methods.
- You caught the exception inside your method ComponentRequestLifecycle.endRequest, in that case we have no way to know that it failed