JSPは動作しないものが含まれる:ファイルが見つからない、ステータス500を

parsecer:

私はこのようなディレクトリ構造を持っています:

ここでは、画像の説明を入力します。

含めるしようとしているheader.jsp中でhome.jsp、このように:

<%--
  Created by IntelliJ IDEA.
  User: Irina
  Date: 31.03.20
  Time: 20:58
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<jsp:include page="${pageContext.request.contextPath}/shared/header.jsp" />
<a href="${pageContext.request.contextPath}/login">Login</a>
<a href="${pageContext.request.contextPath}/signup">Signup</a>

</body>
</html>

で失敗org.apache.jasper.JasperException: javax.servlet.ServletException: File [/comediansapp/shared/header.jsp] not foundエラー。私が間違って何をやっていますか?

vladwoguer:

現在のページへの相対パスを指定します。試してみてください。

<jsp:include page="shared/header.jsp"/>  

${pageContext.request.contextPath}あなたのケースでは、アプリケーションの現在のcontextPathがあるさcomediansappそれはパス上のファイルを検索しようとしますので、/comediansapp/shared/header.jsp

確認してください:https://stackoverflow.com/a/5850406/4325878

私が試したことの完全な例:

事業

index.jspの

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<jsp:include page="shared/header.jsp" />
<a href="${pageContext.request.contextPath}/login.jsp">Login</a>
<a href="${pageContext.request.contextPath}/signup.jsp">Signup</a>

</body>
</html>

共有/ header.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>

<nav style="height:50px; background:red;">
    <strong> JSP!!! </strong>
</nav>

実施例: 実施例

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=385512&siteId=1