web-dev-qa-db-ja.com

<%@ page pageEncoding = "UTF-8"%>は、別のjspからインクルードされると無視されます

私は github のようなコードを持っています:

my.jsp(一般的なjsp-私のすべてのjspSは、ほぼこのパターンに従います)

<%@ include file="include/top.jsp" %>
<title>THE TITLE</title>
<%@ page language="Java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ include file="include/head.jsp" %>
<%@ include file="include/no_menu.jsp" %>
CONTENT
<%@ include file="include/bottom.jsp" %>

どこ :

top.jsp:

<%@ page session="false"%>
<%@ include file="tag_libs.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

head.jsp:

<link href="${pageContext.request.contextPath}/css/twoColFixLtHdr.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <div class="container"><!-- closes in bottom -->
        <div class="header"><!-- closes in menu -->
            <p>
                <a href="home"> <img src="${pageContext.request.contextPath}/images/logo7.jpg"
                    alt="Ted 2012 Logo" name="Ted 2012 Logo" id="Ted_2012_Logo"
                    style="background: display:block; padding: 5px 20px; margin-left: 150px; border-style: solid" /></a>
            </p>
            <hr />

no_menu.jsp:

</div>
<div class="content">

bottom.jsp:

        </div>
        <div class="footer">
            <p>
                blah
            </p>
        </div>
    </div>
</body>
</html>

ご覧のとおり、または私のWordを使用することもできますが、タグのバランスは適切に保たれています。私の質問は-なぜ含めることができないのですか

<%@ page language="Java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

_top.jspファイルのディレクティブ?信じられない。 <%@ page session="false"%>も同様に無視されることを心配する必要がありますか

ありがとう

12
Mr_and_Mrs_D

含まれている各JSPファイルに@pageディレクティブを配置する必要はありません。厳密に言うと、これらはJSPではなく、JSPに含まれるテキストファイルです。 @includeは、含まれているページからメインのJSPにテキストを切り取って貼り付けるのと同じです。 Cの#includeディレクティブに似ています。

<%@ page language="Java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>をメインのJSPファイル(つまり、他のファイルを含むファイル)のvery first行として配置し、他の場所には配置しないようにしてください。
それが役に立てば幸い。

14
gd1