Jsp 使用Servlet重定向页面

Jsp 使用Servlet重定向页面,jsp,servlets,struts2,servlet-filters,Jsp,Servlets,Struts2,Servlet Filters,我有一个混合了普通的旧servlet和Struts2的应用程序。在整个应用程序中使用了一个搜索页面,因此我将其作为通用页面。一些搜索页面只包含使用jsp:include的通用页面 问题:我有一个页面被大约100个其他页面引用,比如: <a href="/reports/reportA/selectionPageA.jsp">Report Selection </a> 由于我不想更改其他100个页面,我在Servlet过滤器中添加了以下内容: if (httpReq.ge

我有一个混合了普通的旧servlet和Struts2的应用程序。在整个应用程序中使用了一个搜索页面,因此我将其作为通用页面。一些搜索页面只包含使用jsp:include的通用页面

问题:我有一个页面被大约100个其他页面引用,比如:

<a href="/reports/reportA/selectionPageA.jsp">Report Selection </a>
由于我不想更改其他100个页面,我在Servlet过滤器中添加了以下内容:

if (httpReq.getServletPath().endsWith("selectionPageA.jsp"))
    ((HttpServletResponse) resp).sendRedirect("/myapp/reportA/selectReportA.action");

问:这是解决这个问题的正确方法吗?一切似乎都正常,但当我访问这个特定页面时,我发现一些struts错误,表明没有找到某些列表方法。即使在前端,一切看起来都很好……

您能在控制台上显示错误或所有内容吗?不,这不是正确的方法。您正在为一个已经不一致的应用程序添加一个新的不一致、难以理解和维护的肮脏把戏。修复不一致性,并将这100个直接链接更改为JSP。一个好的搜索/替换工具可以在几微秒内完成这项工作。我想我还需要更多的了解。谢谢
if (httpReq.getServletPath().endsWith("selectionPageA.jsp"))
    ((HttpServletResponse) resp).sendRedirect("/myapp/reportA/selectReportA.action");