我在拦截器里通过request.getHeader("Referer")获得了浏览器的访问记录,现在在action里想直接调用访问记录的地址予以返回,不知道描述的是否清晰。
假设有一条这样的访问记录http://localhost:8080/aaa/bbb.action?id=1&name=2
发现如果返回action,带参数的话,在转发之后参数会被去掉,即变成http://localhost:8080/aaa/bbb.action
大家有没有什么办法? 我的配置文件采用了比较山寨的零配置方案,参考了这个文档:http://www.blogjava.net/goldrain/archive/2009/04/07/264215.html
关于request.getHeader("Referer")这部分,代码与下面类似:
public void prepare() throws Exception { if ( request != null ) { String referer = request.getHeader( "Referer" ); logger.debug(this, "prepare()","referer is '%'", referer); if ( referer != null ) { redirect( referer ); } else { redirect( request.getContextPath() ); } }
不知道描述的是否清楚,盼回复,非常感谢。
问题补充:
俺的问题解决了,很囧,居然把配置文件中的redirect-action改为redirect就解决了,大家共勉啊,至于为什么我现在还是想不太明白。