Alex Rivera | Logout

Preferred way to handle Java exceptions in ServletContextListener

Asked 2010-10-27T08:36:38.603
22

For servlet lifecycle stuff, what do you guys recommend doing in response to an exception...

For example,

public class Foo implements ServletContextListener {

    @Override
    public void contextInitialized(ServletContextEvent event) {
        try {
           // something nasty
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }

    @Override
    public void contextDestroyed(ServletContextEvent event) {
        try {
           // something nasty
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }

I'm not entirely sure what will handle the runtime exception above. I'm working from the idea that if exceptions are thrown here, they're serious enough to break the system completely so an (unhandled) runtime exception may be ok.

I guess I'm asking what handles unchecked exceptions from servlet context listeners?

Edit
Report

1 Answer

11

When you catch an exception, you might want to consider setting a ServletContext attribute to indicate that an error has been encountered. That way, if the container has not disabled the app, you can have Filters and/or Servlets inspect the ServletContext attribute and take appropriate action, like displaying an error page.

answered 2010-10-27T13:23:09.367

Your Answer