title: HTTP Status 503 - Servlet action is currently unavailable
body: <p>I am using spring source dm server version 2.0.0.
  I developed one application in spring/struts/hibernate. When I am running my application in spring dm server with </p>
  
  <h2>it gives me error like:</h2>
  
  <p>HTTP Status 503 - Servlet action is currently unavailable
  type: Status report
  message: Servlet action is currently unavailable</p>
  
  <h2>description: The requested service (Servlet action is currently unavailable) is not currently available.</h2>
  
  <h2>My web.xml:</h2>
  
  <pre><code> &lt;?xml version="1.0" encoding="UTF-8"?&gt;
  
  
   &lt;web-app xmlns="http://java.sun.com/xml/ns/j2ee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
  version="2.4"&gt;
  
  &lt;!-- Action Servlet Configuration --&gt;
  &lt;servlet&gt;
      &lt;servlet-name&gt;action&lt;/servlet-name&gt;
      &lt;servlet-class&gt;
          org.apache.struts.action.ActionServlet
      &lt;/servlet-class&gt;
      &lt;init-param&gt;
          &lt;param-name&gt;config&lt;/param-name&gt;
          &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/param-value&gt;
      &lt;/init-param&gt;
      &lt;init-param&gt;
          &lt;param-name&gt;debug&lt;/param-name&gt;
          &lt;param-value&gt;3&lt;/param-value&gt;
      &lt;/init-param&gt;
      &lt;init-param&gt;
          &lt;param-name&gt;detail&lt;/param-name&gt;
          &lt;param-value&gt;3&lt;/param-value&gt;
      &lt;/init-param&gt;
      &lt;load-on-startup&gt;2&lt;/load-on-startup&gt;
  &lt;/servlet&gt;
  
  &lt;!--  Spring Framework context Loader --&gt;
  &lt;servlet&gt;
      &lt;servlet-name&gt;context&lt;/servlet-name&gt;
      &lt;servlet-class&gt;
          org.springframework.web.context.ContextLoaderServlet
      &lt;/servlet-class&gt;
      &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
  &lt;/servlet&gt;
  
  &lt;!--  Spring Framework context config location --&gt;
  &lt;context-param&gt;
      &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt;
      &lt;param-value&gt;
          /WEB-INF/applicationContext*.xml
      &lt;/param-value&gt;
  &lt;/context-param&gt;
  
  &lt;!--TODO Prevent direct calls to *.jsp --&gt;
  
  &lt;!-- Action Servlet Mapping --&gt;
  &lt;servlet-mapping&gt;
      &lt;servlet-name&gt;action&lt;/servlet-name&gt;
      &lt;url-pattern&gt;*.htm&lt;/url-pattern&gt;
  &lt;/servlet-mapping&gt;
  
  &lt;!-- The Welcome File List --&gt;
  &lt;welcome-file-list&gt;
      &lt;welcome-file&gt;start.jsp&lt;/welcome-file&gt;
  &lt;/welcome-file-list&gt;
  
  &lt;!-- Define the basename for a resource bundle for I18N --&gt;
  &lt;context-param&gt;
      &lt;param-name&gt;
          javax.servlet.jsp.jstl.fmt.localizationContext
      &lt;/param-name&gt;
      &lt;param-value&gt;
          com.patni.temgt.web.ApplicationResources
      &lt;/param-value&gt;
  &lt;/context-param&gt;
  
  &lt;resource-ref&gt;
      &lt;description&gt;DB Connection&lt;/description&gt;
      &lt;res-ref-name&gt;jdbc/SettleTest&lt;/res-ref-name&gt;
      &lt;res-type&gt;javax.sql.DataSource&lt;/res-type&gt;
      &lt;res-auth&gt;Container&lt;/res-auth&gt;
  &lt;/resource-ref&gt;
  </code></pre>
  
  <h2></h2>
  
  <p>and struts-config.xml is:</p>
  
  <hr>
  
  
  
  <p></p>
  
  <p></p>
  
  <pre><code>&lt;form-beans&gt;
      &lt;form-bean name="timeEntryForm"
          type="com.patni.temgt.web.CreateTimeEntryActionForm" /&gt;
      &lt;form-bean name="expenseEntryForm"
          type="com.patni.temgt.web.CreateExpenseEntryActionForm" /&gt;          
      &lt;form-bean name="timeEntryReportForm"
          type="com.patni.temgt.web.TimeEntryReportActionForm" /&gt;
      &lt;form-bean name="adminCostingCodeForm"
          type="com.patni.temgt.web.AdminCostingCodeActionForm" /&gt;
      &lt;form-bean name="loginForm"
          type="com.patni.temgt.web.LoginActionForm" /&gt;
      &lt;form-bean name="adminEnvironmentVariableForm"
          type="com.patni.temgt.web.AdminEnvironmentVariableActionForm" /&gt;
      &lt;form-bean name="adminEmployeeForm"
          type="com.patni.temgt.web.AdminEmployeeActionForm" /&gt;
      &lt;form-bean name="adminContactDetailForm"
          type="com.patni.temgt.web.AdminContactDetailActionForm" /&gt;
      &lt;form-bean name="adminApplicationUserForm"
          type="com.patni.temgt.web.AdminApplicationUserActionForm" /&gt;
      &lt;form-bean name="adminUserRoleForm"
          type="com.patni.temgt.web.AdminUserRoleActionForm" /&gt;
      &lt;form-bean name="myCostingCodeForm"
          type="com.patni.temgt.web.MyCostingCodeActionForm" /&gt;
  &lt;/form-beans&gt;
  
  &lt;global-forwards&gt;
      &lt;forward name="login" path="/WEB-INF/jsp/login.jsp" /&gt;
  &lt;/global-forwards&gt;
  
  &lt;action-mappings&gt;
  
      &lt;action path="/timeEntry"
          type="com.patni.temgt.web.CreateTimeEntryAction"
          name="timeEntryForm" scope="session" validate="false"
          input="/WEB-INF/jsp/timeEntry.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/timeEntry.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/timeEntry.jsp" /&gt;            
      &lt;/action&gt;
  
      &lt;action path="/expenseEntry"
          type="com.patni.temgt.web.CreateExpenseEntryAction"
          name="expenseEntryForm" scope="session" validate="false"
          input="/WEB-INF/jsp/expenseEntry.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/expenseEntry.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/expenseEntry.jsp" /&gt;
          &lt;forward name="list" path="/WEB-INF/jsp/expenseList.jsp" /&gt;
          &lt;forward name="approvallist" path="/expenseApproval.htm?action=list" redirect="true" /&gt;         
      &lt;/action&gt;   
  
      &lt;action path="/expenseApproval"
          type="com.patni.temgt.web.ExpenseApprovalAction"
          name="expenseEntryForm" scope="session" validate="false"
          input="/WEB-INF/jsp/expenseApprovalList.jsp"&gt;                   
          &lt;forward name="approvallist" path="/WEB-INF/jsp/expenseApprovalList.jsp" /&gt;
      &lt;/action&gt;               
  
      &lt;action path="/adminCostingCode"
          type="com.patni.temgt.web.AdminCostingCodeAction"
          name="adminCostingCodeForm" scope="session" validate="false"
          input="/WEB-INF/jsp/adminCostingCode.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/adminCostingCode.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/adminCostingCode.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/login"
          type="com.patni.temgt.web.LoginAction"
          name="loginForm" scope="session" validate="false"
          input="/WEB-INF/jsp/login.jsp"&gt;
          &lt;forward name="mainPage" redirect="true"
              path="/settleMain.htm" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/settleMain"
          type="com.patni.temgt.web.SettleMainAction"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/settleMain.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/adminEnvironmentVariable"
          type="com.patni.temgt.web.AdminEnvironmentVariableAction"
          name="adminEnvironmentVariableForm" scope="session"
          input="/WEB-INF/jsp/adminEnvironmentVariable.jsp"&gt;
          &lt;forward name="success"
              path="/WEB-INF/jsp/adminEnvironmentVariable.jsp" /&gt;
          &lt;forward name="invalid"
              path="/WEB-INF/jsp/adminEnvironmentVariable.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/adminEmployee"
          type="com.patni.temgt.web.AdminEmployeeAction"
          name="adminEmployeeForm" scope="request"
          input="/WEB-INF/jsp/adminEmployee.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/adminEmployee.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/adminEmployee.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/adminContactDetail"
          type="com.patni.temgt.web.AdminContactDetailAction"
          name="adminContactDetailForm" scope="request"
          input="/WEB-INF/jsp/adminContactDetail.jsp"&gt;
          &lt;forward name="employee" path="/adminEmployee.htm" /&gt;
          &lt;forward name="company" path="/adminCompany.htm" /&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/adminContactDetail.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/adminContactDetail.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/adminApplicationUser"
          type="com.patni.temgt.web.AdminApplicationUserAction"
          name="adminApplicationUserForm" scope="request"
          input="/WEB-INF/jsp/adminApplicationUser.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/adminApplicationUser.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/adminApplicationUser.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/adminUserRole"
          type="com.patni.temgt.web.AdminUserRoleAction"
          name="adminUserRoleForm" scope="request"
          input="/WEB-INF/jsp/adminUserRole.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/adminUserRole.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/adminUserRole.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/timeEntryReporting"
          type="com.patni.temgt.web.TimeEntryReportAction"
          name="timeEntryReportForm" scope="request"
          input="/WEB-INF/jsp/timeEntryReporting.jsp"&gt;
          &lt;forward name="success" path="/WEB-INF/jsp/timeEntryReporting.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/timeEntryReporting.jsp" /&gt;
      &lt;/action&gt;
  
      &lt;action path="/myCostingCodes"
          type="com.patni.temgt.web.MyCostingCodeAction"
          name="myCostingCodeForm" scope="request"
          input="/WEB-INF/jsp/myCostingCodes.jsp" parameter="method"&gt;
  
          &lt;forward name="success" path="/WEB-INF/jsp/myCostingCodes.jsp" /&gt;
          &lt;forward name="invalid" path="/WEB-INF/jsp/myCostingCodes.jsp" /&gt;
      &lt;/action&gt;
  
  &lt;/action-mappings&gt;
  
  &lt;controller&gt;
      &lt;set-property property="processorClass"
          value="org.springframework.web.struts.DelegatingRequestProcessor" /&gt;
  &lt;/controller&gt;
  
  &lt;!-- ========== Message Resources Definitions =========================== --&gt;
  &lt;!--    Will look for a properties file 
      com.patni.temgt.web.ApplicationResources.properties" --&gt;
  &lt;message-resources
      parameter="com.patni.temgt.web.ApplicationResources" /&gt;
  
  &lt;!--  Start the Spring Web Context plugin for Struts --&gt;
  &lt;plug-in
      className="org.springframework.web.struts.ContextLoaderPlugIn"&gt;
      &lt;set-property property="contextConfigLocation"
          value="/WEB-INF/action-servlet.xml" /&gt;
  &lt;/plug-in&gt;
  </code></pre>
  
  <p></p>
  
  <hr>
  
  <p>what could be the reason for this? </p>