Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » Tomcat Users »

Re: ServletContextListener: how to suspend web app on error

Tim Funk

2004-01-09

Replies:

A simple generic way is to use a filter which executes on all requests.

If the ServletContextListener has an error - it can set a variable in the
application context.

Then the filter can check for the existence of that variables. Then forward
to an "error page".

For example ...
doFilter( ... ) {
  if (null!=servletContext.getAttribute("startupError")) {
    servletContext.getRequestDispatcher("/WEB-INF/error.jsp")
      .forward(request, response);
  } else {
    chain.doFilter(...);
  }
}

-Tim

Justin Ruthenbeck wrote:
>
> Seems like a simple question, can't seem to find the answer...
>
> If an error occurs in the #contextInitialized() method of an object that
> implements ServletContextListener, how can I suspend the web application
> so that it is unavailable for use by clients?
>
> Specifically, I have a ServletContextListener that needs to be run at
> application startup. If any one of many errors occur, I want to notify
> the appropriate people (this I can do) and make the entire webapp
> unavailable (this I can't figure out).
>
> Any help is appreciated. I have a feeling this is obvious and I'm just
> missing something.
>


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@(protected)
For additional commands, e-mail: tomcat-user-help@(protected)



©2008 junlu.com - Jax Systems, LLC, U.S.A.