日期:2014-05-20  浏览次数:20742 次

struts2配置问题?只要一配置WEB.XML就立马404,高手指点啊!
我最近刚刚学struts2,自学的,两天了,我连一个最简单struts2都没有配置出来,按照书上的示例一步一步配都报错,我就写了一个action,一个struts.xml,配置了web.xml中使用过滤器,然后三个页面login.jsp,error.jsp,welcome.jsp,就这么简单的一个示例,总是报错,构建路径添加了commons-fileupload-1.2.2.jar commons-io-2.0.1.jar freemarker-2.3.16.jar javassist-3.11.0.GA.jar ognl-3.0.1.jar struts2-core-2.2.3.1.jar xwork-core-2.2.3.1.jar这七个包文件,还有一个mess.properties文件,就这么多,我的struts.xml配置如下:
Java code
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
   "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
   "http://struts.apache.org/dtds/struts-2.1.7.dtd">
   <struts>
       <constant name="struts.custom.i18n.resources" value="mess"></constant>
       <constant name="struts.i18n.encoding" value="UTF-8"></constant>
       <package name="lee" extends="struts-default">
          <action name="login" class="com.demo.LoginAction">
             <result name="input">/login.jsp</result>
             <result name="error">/error.jsp</result>
             <result name="success">/welcome.jsp</result>
          </action>
       </package>
   </struts>

我的web.xml配置如下:
Java code
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    <!-- 让Struts2的核心Filter拦截所有请求 -->
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>


剩余的jsp页面我就不贴出来了,都是从范例中复制过来的呃,为什么我在web.xml中一配置filter就会报404错误呢,我如果去掉过滤器,就可以访问到login.jsp页面,配上就报错!高手指点一下啊,我实在是没招了?

------解决方案--------------------
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*.action</url-pattern>
</filter-mapping>
只对action的访问通过拦截器处理,其他的jsp还是由tomcat自己处理
------解决方案--------------------
探讨
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*.action</url-pattern>
</filter-mapping>
只对action的访问通过拦截器处理,其他的jsp还是由tomcat自己处理

------解决方案--------------------
我可没有遇到过Filter拦截请求出现404的错误呢。同求高手来求解。我理解一个新手的框架之旅困惑和心理。不要怕困难。多尝试就可以熟悉掌握的了。大家都是这样一路走来的。呵呵
------解决方案--------------------
帮楼主顶一下,我也刚开始学框架,没遇到楼主的问题
------解决方案--------------------
把你访问的地址贴出来看看。。。
------解决方案--------------------
不错,学这个遇到问题是必然的,多多的尝试,慢慢就好了