0

我有一个混合了普通旧 servlet 和 Struts2 的应用程序。整个应用程序都使用了一个搜索页面,所以我把它作为一个通用页面。几个搜索页面只包含使用jsp:include.

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

<a href="/reports/reportA/selectionPageA.jsp">Report Selection </a>

这是一个不使用 struts2 的简单 jsp 页面,但我希望此页面包含通用搜索页面(使用 struts2)。所以我做了一个这样的映射,struts.xml因为通用搜索页面需要GenericReportSelection在显示页面之前使用 构建几件事:

<package name="reportA" extends="struts-default" namespace="/reportA">
    <action name="selectReportA" class="GenericReportSelection">
        <result>/reports/reportA/selectionPageA.jsp</result>
    </action>
</package>

由于我不想更改其他 100 页,我将以下内容添加到我的 Servlet 过滤器中:

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

问题:这是解决这个问题的正确方法吗?一切似乎都正常,但是当我访问这个特定页面时,我收到了某些 struts 错误,提示找不到某些“列表”方法。即使在前端一切看起来都很好......

4

0 回答 0