HTTP Status 404 - Servlet ActionServlet is not available--------------------------------------------------------------------------------type Status reportmessage Servlet ActionServlet is not availabledescription The requested resource (Servlet ActionServlet is not available) is not available.
--------------------------------------------------------------------------------Apache Tomcat/5.5.28register.jsp
<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title><bean:message key="jsp.register.title" /></title>
  </head>
  <body>
   <%=request.getParameter("uname") %>
    <center><h2><bean:message key="jsp.register.heading" /></h2>
     <hr>
     <html:form action="user">
     <table>
     <tr>
     <th><bean:message key="usernamestyle" /></th>
     <td><html:text property="username" size="25" /></td>
     </tr>
     <tr>
     <th><bean:message key="passwordstyle" /></th>
     <td><input type="password" name="password" size="27" /></td>
     </tr>
     <tr>
     <th><bean:message key="passwordsstyle" /></th>
     <td><input type="password" name="password2" size="27" /></td>
     </tr>
     <tr>
     <th><bean:message key="emailstyle" /></th>
     <td><html:text property="email" size="25" /></td>
     </tr>
     <tr>
     <td>
     <html:submit property="submit" value="注册"></html:submit>
     <html:reset property="reset" value="取消"></html:reset>
     </td>
     </tr>
     </table>
     </html:form>
    </center>
  </body>
</html>login.jsp
<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title><bean:message key="login.jsp.title" /></title>
    
  </head>
  
  <body>
   <center><h1><bean:message key="login.jsp.heading" /></h1>
     <hr>
     <html:errors />
     <html:form action="login">
     <table>
     <tr>
     <th><bean:message key="usernamestyle" /></th>
     <td><html:text property="name" size="23"/></td>
     </tr>
     <tr>
     <th><bean:message key="passwordstyle" /></th>
     <td><input type="password" name="psw" size="23"/></td>
     </tr>
     <tr>
     <td>
     <html:submit property="submit" value="注册"></html:submit>
     <html:reset property="reset" value="取消"></html:reset>
     </td>
     </tr>
     </table>
     </html:form>
     </center>
  </body>
</html>
struts-config.xml
<struts-config>
  <data-sources />
  <form-beans>
   <form-bean name="userForm" type="com.sunyang.form.UserForm" />
   <form-bean name="loginForm" type="com.sunyang.form.LoginForm" />
  </form-beans>
  
  <action-mappings>
   <action path="/user" name="userForm" type="com.sunyang.webtier.UserAction" attribute="userForm" scope="request" input="/index.jsp" parameter="method" >
   <forward name="fail" path="/index.jsp"></forward>
   <forward name="success" path="/success.jsp"></forward>
   </action>
   <action path="/login" name="loginForm" type="com.sunyang.webtier.LoginAction" attribute="loginForm" scope="request" input="/login.jsp" parameter="method">
   <forward name="succ" path="/index.jsp"></forward>
   <forward name="fail" path="/login.jsp"></forward>
   </action>
  </action-mappings>
  <message-resources parameter="com.sunyang.resource.ApplicationResource" />
 
  <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
   <set-property property="contextConfigLocation" value="/WEB-INF/applicationContext.xml"/>
  </plug-in>
</struts-config>applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="dataSource" class="org.apache.commons.dbcp.DataSourceConnectionFactory">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:mysql/liuyanban_db"></property>
<property name="username" value="root"></property>
<property name="password" value="19870915"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
<property name="mappingResources">
<list>
<value>com/sunyang/bean/User.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="show_sql">false</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
</props>
</property>
</bean>
<bean id="userDAO" class="com.sunyang.dao.UserDAOImpl">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="userService" class="com.sunyang.service.UserService">
<property name="userDAO" ref="userDAO"></property>
</bean>
<bean name="/user" class="com.sunyang.webtier.UserAction">
<property name="userService" ref="userService"></property>
</bean>
<bean id="loginService" class="com.sunyang.service.LoginService">
<property name="userDAO" ref="userDAO"></property>
</bean>
<bean name="/login" class="com.sunyang.webtier.LoginAction">
<property name="loginService" ref="loginService"></property>
</bean>
</beans>web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    <servlet-name>ActionServlet</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>3</param-value>
    </init-param>
    <init-param>
      <param-name>detail</param-name>
      <param-value>3</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>ActionServlet</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <filter>
   <filter-name>FileOut</filter-name>
   <filter-class>com.sunyang.util.FileOut</filter-class>
  </filter>
  <filter-mapping>
   <filter-name>FileOut</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

解决方案 »

  1.   

    404是说找不到servlet,<html:form action="login"> action的值应该跟struts-config.xml中的<action>标签中的path的值一样,应该写成,<html:form action="/login"> 或者<html:form action="login.do">;有的时候这样写还是找不到,就写成这样<html:form action="<%=request.getContextPath() %>/login.do">;
      

  2.   

    改成这样了<html:form action="/login">还是不行啊!还是同样的问题
    我做的这个注册是想把信息注册到数据库中
      

  3.   

    改成<html:form action="/login.do"> 呢  
      

  4.   

    好像没有那一斜杠
    html:form action="login.do"> 
      

  5.   

    404是说找不到servlet,struts-config.xml你配置的是  *.do  意思是所以以.do结尾的 都截到你的ActionServlet 里面去 处理。  所以是<html:form action="login.do">   没有/杠,才去看的
      

  6.   

    你的application里面配置有问题,是spring配置文件
      

  7.   

    1. 检查一下applicationContext.xml文件中的<bean name="/user" class="com.sunyang.webtier.UserAction">,name把斜杠去掉;
    2. 检查一下web.xml中是否将*.do都捕获处理了?第二点最后可能
      

  8.   

    为什么总是显示这个错误?是不是tomcat的问题?因为我的tomcat有日志警告信息提示!