Stefan Schulz said:
Those should not happen. Anyone just logging and discarding an Error
should be drawn and quartered. An Error means something went so majorly
wrong that the system can't be expected to recover. Okay, so sometimes
this might not be true, and sometimes, it might be possibly to at least
fail gracefully. But just discarding one is about the worst thing you
can do.
This is Tomcat, at least in some of its 4.1.x incarnations.
The problem is partly due to the notion of multiple webapps residing in the
same servlet container -- if one of them raises ExceptionInInitializerError,
that one webapp is bad, but does not imply that the whole JVM instance is
bad. Therefore, the JVM itself does not shut down. Webapps (can) have
multiple initialization hooks, so if one part of it raises
ExceptionInInitializerError, in principle, the other parts might still
successfully initialize and run. Of course, that generally isn't the case...
I wonder if the Tomcat 5 series have addressed this any better... I'll have
to go check....
-- Adam Maass