一尘不染

Java(JSP):在“ sub-jsp”中重复contentType标头

jsp

当您在另一个.jsp中包含的.jsp中重复标题时,会发生什么情况?

例如,如果 example.jsp 以此开头:

<?xml version="1.0" encoding="UTF-8"?>
<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page">
<jsp:directive.page contentType="text/html; charset=UTF-8" />

<div class="content">

<jsp:include page="support.jsp"/>
...

(包括 support.jsp

然后 support.jsp 从以下开始:

<?xml version="1.0" encoding="UTF-8"?>
<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page">
<jsp:directive.page contentType="text/html; charset=UTF-8" />
...

那是问题吗?这是不好的做法吗?

当您重复几次仅与结果.html页中的一个标头相对应的标头时, 具体 发生了什么?


阅读 222

收藏
2020-06-10

共1个答案

一尘不染

JSP规范

JSP.5.4

包含的页面无法更改响应状态代码或设置标题。这排除了调用setCookie之类的方法。调用这些方法的尝试将被忽略。该约束等效于对RequestDispatcher类的include方法施加的约束。

也就是说,尝试设置内容类型将被忽略。

2020-06-10