public class BaseAction extends ActionSupport
implements ServletRequestAware, ServletResponseAware, ServletContextAware,SessionAware
{
Map<String, Object> session;
HttpServletResponse response;
HttpServletRequest request;
protected ServletContext application;
@Override
public void setServletContext(ServletContext arg0) {
this.application=arg0;
}
@Override
public void setServletResponse(HttpServletResponse arg0) {
this.response=arg0;
}
@Override
public void setServletRequest(HttpServletRequest arg0) {
this.request=arg0;//这是ServletRequestAware里面的方法
System.out.println(request);
}
@Override
public void setSession(Map<String, Object> arg0) {
this.session = arg0;
}
<interceptors>
<interceptor-stack name="sameStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="servletConfig"/>
</interceptor-stack>
</interceptors>
搞死人了,不是说继承了ServletRequestAware配置servletConfig拦截器就可以获取request对象吗
------解决方案--------------------
可直接继承org.apache.struts2.dispatcher.DefaultActionSupport,然后用ServletActionContext.getRequest()获取
------解决方案--------------------
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
import org.apache.struts2.util.ServletContextAware;
public class PomInfoAction extends ActionSupport implements
ServletRequestAware, ServletContextAware, ServletResponseAware {
....
}
看看你import的包对不对