Struts 1.3:在应用程序上下文之外转发?
时间:2020-03-05 18:53:44 来源:igfitidea点击:
Struts 1.3应用程序。 Struts / Java不提供主要网站。我需要将struts动作的结果转发到网站上位于struts上下文之外的页面。当前,我在上下文中转发到JSP,并使用元刷新来转发到实际位置。似乎有点suck。有没有更好的办法?
解决方案
回答
从严格意义上讲,我们不能"前进"。只需在Action类的execute()方法中的HttpServletResponse对象上调用sendRedirect()即可。然后,"返回null"。
或者,在ActionForward对象(我们将要返回的对象)上调用setModule或者将路径设置为绝对URI
回答
我最终做了response.sendRedirect()。
回答
如果仍然在Web应用程序中,则可以使用ServletContext.RequestDispatcher?这就是Struts的doForward()方法的工作方式。但是,要离开Struts / Java,我们需要sendRedirect()。
RequestDispatcher rd = getServletContext().getRequestDispatcher(uri); rd.forward(request, response);