Description
Repro:
- Add the attached page flow to a Beehive webapp, build, and hit /foo/Controller.jpf.
- Click the 'throwException' link.
EXPECTED: a Tomcat error page for the IllegalStateException thrown from the page.
ACTUAL: a 503 error returned to the browser; the original exception is nowhere to be found, in the logs or on the console.
This only happens when the JSP's page flow has a @Jpf.Catch with type=Exception.class. There's an infinite loop happening, where the page exception is getting caught by the @Jpf.Catch, which re-forwards to the error page. The 503 is the Page Flow framework's decision to break out of the string of forwards when some threshold is reached (25 by default).