如何在运行时在JSP中包含HTML?

时间:2012-01-26 15:51:35

标签: html jsp

我需要在运行时在JSP中包含html或image。我将在运行时了解jsp文件名。所以我无法对JSP包含进行更改。

我该怎么做?

1 个答案:

答案 0 :(得分:2)

我不确定你的运行时是什么意思?我做过类似的事情。在控制器中我做。 model.addAttribute("jspContent", "test.jsp")

然后在包含jsp文件中:

<jsp:include page="${jspContent}" ></jsp:include>

编辑:
阅读你的评论。我想那取决于你正在使用的其他技术。您可以添加要包含在会话中的名称,然后在接收重定向的Controller中读取它。将其添加到模型并从会话中清除。或者,如果您碰巧使用Spring,我昨天就知道了这一点:http://static.springsource.org/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-flash-attributes

EDIT2: 我的意思是这样的,我不完全确定它是否合适,但这是一个想法:) 在重定向的控制器中,您可以执行以下操作:

session.setAttribute("jspContentFromRedirect", "test.jsp");
servletResponse.sendRedirect(urlToRedirectTo);

然后在接收控制器中:

String jspContent = session.getAttribute("jspContentFromRedirect");
if(jspContent != null){
    model.addAttribute("jspContent", jspContent);
    session.setAttribute("jspContentFromRedirect", null);
    }

像这样的东西