String action="/cartypeInfo/queryinfo_queryCarInfo.do";
RequestDispatcher rd = request.getRequestDispatcher(action);
rd.forward(request, response);
总是报404错误,但是我直接请求这个action,或者在地址栏输入这个action地址都是没有错的。
如果我请求String action="/test.jsp"; 也是没有错的。这是什么原因呢?
网上找了很久,有的也出现这种问题了,但是都没有得到解决。
是不是struts2就不支持转发action呢?郁闷中。。
17 个解决方案
#1
还有就是,
response.sendRedirect(request.getContextPath()+action);
也是没有错的。
response.sendRedirect(request.getContextPath()+action);
也是没有错的。
#2
cartypeInfo/queryinfo_queryCarInfo.do
去掉前面的"/"试试
去掉前面的"/"试试
#3
要不就直接这样写 String action = "queryinfo_queryCarInfo.do ";
#4
都不行的。我觉得不是路径的问题。
#5
没见过这样写的,学习学习
#6
404 肯定是路径问题啊
#7
struts 咋跳转的
要不就这样写
试试
要不就这样写
request.getRequestDispatcher("/cartypeInfo/queryinfo_queryCarInfo.do").forward(request, response);
试试
#8
用转发试试..
#9
解决了。哎,好像每次在csdn发帖子,到最后都是自己解决的。。
#10
如何解决的啊。。。
#11
还是用的
RequestDispatcher rd = request.getRequestDispatcher(action);
rd.forward(request, response);
是我struts2的FilterDispatcher配置错了。它会自动拦截action的路径。
RequestDispatcher rd = request.getRequestDispatcher(action);
rd.forward(request, response);
是我struts2的FilterDispatcher配置错了。它会自动拦截action的路径。
#12
能不能把你的web.xml贴出来看看,我想看看你的FilterDispatcher如何配置的~我遇到类似问题
#13
能不能把你的web.xml贴出来看看,我想看看你的FilterDispatcher如何配置的~我也遇到类似问题
#14
b理解中
#15
struts2中RequestDispatcher问题
web.xml 2.4版本里,默认的filter只拦截request。
如果使用request.getRequestDispatcher("xx").forward(request,response),属于服务器内部forward,不会被拦截器拦截,所以你需要为filter配置拦截forward才行。
struts1用的是servlet,forward也会起作用。struts2里的filter的确是个大问题哟。
用filter配置拦截fowward要写成
<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>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
web.xml 2.4版本里,默认的filter只拦截request。
如果使用request.getRequestDispatcher("xx").forward(request,response),属于服务器内部forward,不会被拦截器拦截,所以你需要为filter配置拦截forward才行。
struts1用的是servlet,forward也会起作用。struts2里的filter的确是个大问题哟。
用filter配置拦截fowward要写成
<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>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
#16
今天偶遇此种情况,非常感谢各位给出的解决方案
#17
我也遇到这样的问题,写相对路径就好了哦
#1
还有就是,
response.sendRedirect(request.getContextPath()+action);
也是没有错的。
response.sendRedirect(request.getContextPath()+action);
也是没有错的。
#2
cartypeInfo/queryinfo_queryCarInfo.do
去掉前面的"/"试试
去掉前面的"/"试试
#3
要不就直接这样写 String action = "queryinfo_queryCarInfo.do ";
#4
都不行的。我觉得不是路径的问题。
#5
没见过这样写的,学习学习
#6
404 肯定是路径问题啊
#7
struts 咋跳转的
要不就这样写
试试
要不就这样写
request.getRequestDispatcher("/cartypeInfo/queryinfo_queryCarInfo.do").forward(request, response);
试试
#8
用转发试试..
#9
解决了。哎,好像每次在csdn发帖子,到最后都是自己解决的。。
#10
如何解决的啊。。。
#11
还是用的
RequestDispatcher rd = request.getRequestDispatcher(action);
rd.forward(request, response);
是我struts2的FilterDispatcher配置错了。它会自动拦截action的路径。
RequestDispatcher rd = request.getRequestDispatcher(action);
rd.forward(request, response);
是我struts2的FilterDispatcher配置错了。它会自动拦截action的路径。
#12
能不能把你的web.xml贴出来看看,我想看看你的FilterDispatcher如何配置的~我遇到类似问题
#13
能不能把你的web.xml贴出来看看,我想看看你的FilterDispatcher如何配置的~我也遇到类似问题
#14
b理解中
#15
struts2中RequestDispatcher问题
web.xml 2.4版本里,默认的filter只拦截request。
如果使用request.getRequestDispatcher("xx").forward(request,response),属于服务器内部forward,不会被拦截器拦截,所以你需要为filter配置拦截forward才行。
struts1用的是servlet,forward也会起作用。struts2里的filter的确是个大问题哟。
用filter配置拦截fowward要写成
<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>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
web.xml 2.4版本里,默认的filter只拦截request。
如果使用request.getRequestDispatcher("xx").forward(request,response),属于服务器内部forward,不会被拦截器拦截,所以你需要为filter配置拦截forward才行。
struts1用的是servlet,forward也会起作用。struts2里的filter的确是个大问题哟。
用filter配置拦截fowward要写成
<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>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
#16
今天偶遇此种情况,非常感谢各位给出的解决方案
#17
我也遇到这样的问题,写相对路径就好了哦