struts2配置问题?只要一配置WEB.XML就立马404,高手指点啊!

下一行code 2011-09-17 11:06:54
我最近刚刚学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配置如下:
<?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配置如下:
<?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页面,配上就报错!高手指点一下啊,我实在是没招了?
...全文
215 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
下一行code 2011-09-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zyz1985 的回复:]

<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*.action</url-pattern>
</filter-mapping>
只对action的访问通过拦截器处理,其他的jsp还是由tomcat自己处理
[/Quote]

按照你说的改了,还是404错误,我把
<constant name="struts.custom.i18n.resources" value="mess"></constant>
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
这一段去掉了,tomcat日志中没有报错,访问依然404,怎么会找不到呢?
完美灬缺陷 2011-09-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zyz1985 的回复:]
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*.action</url-pattern>
</filter-mapping>
只对action的访问通过拦截器处理,其他的jsp还是由tomcat自己处理
[/Quote]

struts只对.action的访问才进行拦截处理
游一游走一走 2011-09-17
  • 打赏
  • 举报
回复
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*.action</url-pattern>
</filter-mapping>
只对action的访问通过拦截器处理,其他的jsp还是由tomcat自己处理
yuandaobo 2011-09-17
  • 打赏
  • 举报
回复
不错,学这个遇到问题是必然的,多多的尝试,慢慢就好了
luohongping520 2011-09-17
  • 打赏
  • 举报
回复
把你访问的地址贴出来看看。。。
下一行code 2011-09-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 lianglongquan110 的回复:]

我可没有遇到过Filter拦截请求出现404的错误呢。同求高手来求解。我理解一个新手的框架之旅困惑和心理。不要怕困难。多尝试就可以熟悉掌握的了。大家都是这样一路走来的。呵呵
[/Quote]

谢谢!刚刚我搞定了,去掉了
<constant name="struts.custom.i18n.resources" value="mess"></constant>
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
然后在jsp页面中写了test.action(前面只写了test),然后再action类里面去掉了implements Action换成了extends ActionSupport,然后使用回环地址访问到了WEB应用,感谢各位高手的帮助!!万分感谢!!
xue785920414 2011-09-17
  • 打赏
  • 举报
回复
帮楼主顶一下,我也刚开始学框架,没遇到楼主的问题
lianglongquan110 2011-09-17
  • 打赏
  • 举报
回复
我可没有遇到过Filter拦截请求出现404的错误呢。同求高手来求解。我理解一个新手的框架之旅困惑和心理。不要怕困难。多尝试就可以熟悉掌握的了。大家都是这样一路走来的。呵呵

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧