【发布时间】:2016-08-20 01:00:35
【问题描述】:
我正在从我的 JSP 页面获得拆分输出,其中 writer.write() 输出首先是带有省略标记的 JSP。
我有以下简单的 JSP 页面
<%@ page import="com.AAA.SiteTemplate.RenderPageInterface" %>
<%@ page import="java.io.Writer" %>
<%@ page import="java.io.IOException" %>
<%@ page import="com.NatureRelaxation.SiteTemplate.RenderPageInterfaceNull" %><%--
Created by IntelliJ IDEA.
User:
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<%
RenderPageInterface obj = (RenderPageInterface) request.getAttribute("renderPageInterface");
if (obj == null){
obj = new RenderPageInterfaceNull();
}
%>
<title><% response.getWriter().write(obj.getTitle()); %></title>
<style type="text/css">
</style>
</head>
<body>
<%
obj.renderHTML(response.getWriter());
%>
</body>
</html>
我通过这个小功能包含它:
public static void doRequest(HttpServletRequest req, HttpServletResponse res, RenderPageInterface renderPageInterface) throws ServletException, IOException{
req.setAttribute("renderPageInterface", renderPageInterface);
RequestDispatcher rd = req.getRequestDispatcher("/WEB-INF/templates/header.jsp");
rd.include(req, res);
}
我现在得到的回应是
My page titleMypagebody....
<html>
<head>
<title></title>
等等。中间有 4 个换行符。我认为这一定是编译器错误,但清除缓存(IntelliJ)并重新启动、重新部署到 Tomcat 8 并不能解决它。在服务器重新启动之前一切正常,但现在没有任何修复。我什至在 JSP 上运行调试器,一切正常。
更新:
没有这个标签“”它运行良好,但是当标签在那里时,正文和标题都写在顶部和底部的模板。 getTitle() 返回一个字符串。
【问题讨论】: