我需要在Tag
类中包含一个JSP页面。我相信使用API在另一个JSP页面中包含JSP页面的标准方法是:
request.getRequestDispatcher("included.jsp").include(request, response);
但是,我注意到无论代码位于何处,所包含的页面都会呈现在生成页面的顶部。无论代码是作为scriptlet放置在Tag
类中还是直接放在JSP文件中,都是如此。另一方面,<jsp:include>
操作按预期工作,呈现标记出现在JSP文件中的包含页面。
如何在类中包含JSP页面,使其行为与<jsp:include>
相同?无法在Tag类中调用<jsp:include>
操作,是吗?
答案 0 :(得分:4)
也许您的代码类应在调用pageContext.getOut().flush();
request.getRequestDispatcher("included.jsp").include(request, response);
答案 1 :(得分:0)
我讨厌懒惰,但为什么不看一下JSP编译的文件。例如,tomcat将这些编译为\ work,你可以查看它在那里生成的java。