<filter>
<filter-name>dispatcher</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>dispatcher</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
我这个是struts2.2,不知道对你有用没有
<filter-name>dispatcher</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>dispatcher</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
我这个是struts2.2,不知道对你有用没有
解决方案 »
- java.util这个包中,util的全称是什么吖?
- Hibernate3 如何操作SQL Server 2008 XML类型的字段?
- Springside3配置项目TOMCAT报错springSecurityFilterChain
- 在JSP页面中调用jfreechart生成的图片乱码解决方案
- 有那位大哥帮一下MM呀!急救!MM在这里跪谢啦!
- 我昨天装了JCreator,测试的时候,少了包javax.ejb,怎么办?
- 用struts1.2的帮帮忙
- Hibernate 如何存取ORACLE 9I 的CLOB字段数据
- 那位转发给我,谢谢。:::一个简单的jsp树型结构示例(jsp+weblogic+oracle) 作者小章::::
- 高分求助: 谁有visualCafe 4。5 enterprice的注册码?
- sql字符串拼接和绑定变量疑问和sql注入
- 没招了,Hibernate 的 not mapped 问题
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter这个是在struts2.1里的。
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>运行还是404
看下你在struts.xml的配置。
“org.apache.struts2.dispatcher.FilterDispatcher”是老的方式。
还是用 “org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter”
“org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter”
这两种都没问题
楼主的访问路径是否正确?
jsp文件的路径是对的
因为在web.xml里不配置filter的话访问相同的jsp文件正常,所以觉得不是路径的问题
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<!-- 指定Struts 2配置文件的根元素 -->
<struts>
<!-- 指定全局国际化资源文件 -->
<constant name="struts.custom.i18n.resources" value="mess"/>
<!-- 指定国际化编码所使用的字符集 -->
<constant name="struts.i18n.encoding" value="GBK"/>
</struts>
。。无语..
<struts>
<package name="default" extends="struts-default">
<action name="Student" class="net.oraro.action.StudentAction">
<result name="index">index.jsp</result>
<result name="addoredit">add_or_edit.jsp</result>
<result name="view">main.jsp</result>
</action>
<action name="Manager" class="net.oraro.action.ManagerAction">
<result name="index">index.jsp</result>
<result name="view">/jsp/main.jsp</result>
</action>
</package>
</struts>
你的配置文件 连action都没有怎么跳? 如果是欢迎页index.jsp。也要重新配。
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<!-- 指定Struts 2配置文件的根元素 -->
<struts>
<!-- 指定全局国际化资源文件 -->
<constant name="struts.custom.i18n.resources" value="mess"/>
<!-- 指定国际化编码所使用的字符集 -->
<constant name="struts.i18n.encoding" value="GBK"/>
</struts>
你的这段,只是把头部配了。
- <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>
- <filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
- <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
我试着把web.xml里的/*改成了*.action,还是一样404
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>Struts2Example2</display-name>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter> <filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter> <filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
struts.xml <constant name="user.data.dir" value="c:\DATA\"></constant>
<!-- 1048576 is 1M, 1048576*5 = 5242880-->
<constant name="struts.multipart.maxSize" value="5242880"></constant> <package name="hdm" extends="struts-default">
<action name="login" class="servlet.Login">
<result name="success">login.jsp</result>
<result name="error">error.jsp</result>
</action>
1、像我顶楼那样,在web.xml里用/*拦截所有url,使用org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter处理,这样应该可以直接访问jsp吗?2、如果不行,是否需要配置struts.xml?不考虑action只是显示简单jsp应该如何配置struts.xml?3、我把<url-pattern>改成了*.action,可访问jsp时候还是404,为什么?
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>若能赐教非常感谢!搜了半天有的说工程名不能以struts开头,我重建了一个不包含struts的,也还是一样404
1、配置web.xml
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<!-- 只对后缀为.action的URL进行struts处理,jsp还是用原有的-->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
2、新建一个test.jsp页面,访问http://localhost:port/project_name/test.jsp
JSP基础没学好啊,这个拦截标记的意义是拦截所有的页面访问,不管你是html还是jsp还是action2、如果不行,是否需要配置struts.xml?不考虑action只是显示简单jsp应该如何配置struts.xml?
当然需要配置struts,不太明白你的直接访问jsp是什么意思,因为struts返回的jsp页面势必要使用s标签,只要使用了s标签,就必须从一个action返回结果,否则页面报500错误3、我把<url-pattern>改成了*.action,可访问jsp时候还是404,为什么?
第一,修改配置以后是否重启了tomcat
第二,你的路径究竟写的对不对,返回404肯定是你页面不存在,你可以再根目录新建一个空白的test.jsp文件,直接访问http://localhost:8080/项目地址/test.jsp,如果依然报错,你得看是不是tomcat启动的时候有错误,项目内文件有错误会导致这个项目不被服务器加载
结果启动报错,无法找到FilterDispatcher类。
后来发现原因是jar包不能直接添加到buildpath里面,要拷贝到lib文件夹下面才能使用至于为什么我也不清楚。
至于楼上一些哥们的说法,要在struts.xml里面配置一些action才能使用...应该没这要求吧...对于struts.xml里面没配置的URL,应该是直接访问吧...
具体怎么操作?求指导正在学Struts2 老是报404错,要崩溃了!
把其他的web.xml给复制过来用,仍不行,然后回去struts.xml里看配置,然后直接把所有<struts></struts>里面的内容删掉,只写简单的
<struts>
<package name="index" namespace="/" extends="struts-default">
<action name="index">
<result>index.jsp</result>
</action>
</package>
</struts>我的小页面终于又回来了
不知道是不是因为之前的配置参数有错还是什么,可能一旦有错他就会卡在那里然后报错,所以这是我的这个问题的解决办法,不是你们想要的方法不要喷哎,这贴过的真久不知道还有没有人鸟我呢