posted on 2012-08-05 17:24
xcp 阅读(3949)
评论(1) 编辑 收藏 所属分类:
struts2
先看一下struts2 的web.xml文件:
struts2
org.apache.struts2.dispatcher.filterdispatcher
struts2
/*
在请求应用时,struts2将会截获所有请求,对于servlet请求将不能够正常相应,是struts2把servlet当成action了,因为servlet和action都是没有后缀的
解决方法目前有四种:
方法1:统一在servlet后面加上.servlet(包括web.xml配置文件中和页面上使用servlet的地方)
方法2:继承strutsprepareandexecutefilter,实现以下两个方法。
public void init(filterconfig filterconfig) throws
servletexception {
..............................
}
public void dofilter(servletrequest request,
servletresponse response,
filterchain chain) throws
ioexception, servletexception {
...............................
if(url.contain("servlet")){
((httpservletresponse) response).sendredirect(redirecturl);
}
super.dofilter(request, response, chain);
}
方法3:修改拦截页面配置
原:
struts2
org.apache.struts2.dispatcher.filterdispatcher
struts2
/*
现:
struts2
*.action
struts2
*.jsp
struts2
/user/*
servlet的请求路径不必改变
方法4:在struts.xml文件中修改
……
名称: ♪4c.esl | .↗evon
口号: 遇到新问题♪先要寻找一个方案乄而不是创造一个方案こ
mail: