下面这个是可以运行起来的xml配置文件,看一下与楼主的有什么不同 servlet配置在filter前面<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
</param-value>
  </context-param>
  <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <servlet>
    <servlet-name>action</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>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  
  <filter>
   <filter-name>SetCharacterEncoding</filter-name>
   <filter-class>cn.sanneng.servlet.SetCharacterEncoding</filter-class>
   <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
   </init-param>
  </filter>
  <filter>
   <filter-name>SecurityFilter</filter-name>
   <filter-class>cn.sanneng.servlet.SecurityFilter</filter-class>
  </filter>
  <filter-mapping>
   <filter-name>SetCharacterEncoding</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>
  <filter-mapping>
   <filter-name>SecurityFilter</filter-name>
   <url-pattern>/forum/main/*</url-pattern>
  </filter-mapping>
</web-app>

解决方案 »

  1.   

    端口被占用了?换个端口
    在tomcat安装目录下的conf有个server.xml ,把里面的8080端口换个其他的
    然后访问路径是http://127.0.0.1:8088/【root】
      

  2.   

    Address   already   in   use:   JVM_Bind 
    明显是TOMCAT端口号被用了啊,要么你上次的TOMCAT没关,你打开任务管理器看看是不是你的tomcat.exe这个进程在,如果是的话,结束掉,在启动tomcat,如果不是的话,那就是你的8080端口被用了在你的\Tomcat 5.0\conf\server.xml第95行左右吧,把端口换一个这样基本就OK了.还有xml配置出错的话,基本都是404错误!
      

  3.   

    看你抛出来的错误.好象是你的端口被占用了!
    你是不是装了ORACLE,然后默认了tomcat的端口
    如果是的话,就在tomcat安装目录下的conf有个server.xml
    把里面的8080换成8088
    然后访问路径是http://127.0.0.1:8088/【root】提醒你一下,一般的浏览器的默认端口80
    如果你改成80就不用再输入"127.0.0.1:8080"后面的":8080"
    希望对你有所帮助!