如果有任何用户请求页面,如/ q / abc1和/ q / abc2等。我想将q后面的所有请求重定向到单个页面。
假设用户在www.mysite.com/q/abc1或www.mysite.com/q/abc2上请求时,我想将所有请求后跟q重定向到单个页面,例如handler.jsp。
答案 0 :(得分:0)
嗯...... package
namespace="/q"
和默认操作<default-action-ref name="someAction"/>
怎么样。
答案 1 :(得分:0)
我认为你应该使用过滤器并在fwd之前筛选出请求到struts 2框架(FilterDispatcher)
public class SampleServletFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
String requestURI = httpRequest.getRequestURI();
if(requestURI.contains("/q/")) {
// redirect to handler.jsp
} else {
chain.doFilter(request, response);
}
}
}
使用struts2拦截器处理这种情况很棘手。