The possible causes of an HTTP status code 503 - Service or application unavailable error

Technote (FAQ)
Problem
This technote documents the possible causes of an HTTP 503 (service unavailable) error as it relates to WebSphereŽ Application Server.
Cause
An HTTP status code 503 indicates that your Web server is currently unable to handle the request because of a temporary overload or maintenance of your server. However, as it relates to WebSphere Application Server, this error indicates that your Web application is unavailable for some reason.
Solution
In all releases of V3.5, this error can occur for the following reasons:
  • Your Web application is disabled. Right-click the Web application and verify that a check mark appears next to enabled.
  • A servlet that is configured to load at startup fails to initialize, making the entire Web application unavailable. The servlet can fail to initialize for three reasons:
    • The servlet class is missing from your Web application class path.
    • The servlet init method fails.
    • The servlet is marked disabled.

To check if a servlet is loading at startup, go to the Advanced tab of the servlet. Then verify that your load at startup setting shows true. Keep the WebSphere Application Server internal servlets enabled to load at startup (for example: file serving servlet, JSP processor, invoker, error reporter, and so forth). If the problem described in reason "A" does not resolve the problem, set the load at startup option to false. This action applies to any of your custom built servlets. Restart your Web application and see if the application is available.

In all releases of V4.0 and V5.0, this situation can occur for the following reason:

A servlet that is configured to load at startup fails to initialize, making the entire webModule unavailable. The servlet can fail to initialize for three reasons:
    • The servlet class is missing.
    • The constructor of the servlet class fails with exceptions. For example:
      NoClassDefFoundException
      ClassCastException
    • The init method of the servlet fails.

To verify that your servlet is loading at startup, check your web.xml file for that webModule:

<servlet id="Servlet_1">
<servlet-name>Controller Servlet</display-name>
<description>This is a controller servlet</description>
<servlet-class>ControllerServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>











Document Information

Product categories: Software, Application Servers, Distributed Application & Web Servers, WebSphere Application Server, Servlet Engine/Web Container
Operating system(s): Multi-Platform
Software version: 3.5, 4.0, 5.0
Software edition: All Editions
Reference #: 1052514
IBM Group: Software Group
Modified date: 2004-01-09