在 intelij 中創建專案并啟動 Tomcat 服務器后,我成功獲得了 index.jsp 頁面。
但是當我嘗試打開 HelloServlet.java 時,我得到:“實體化 servlet 類時出錯”錯誤。
然后當我重新加載這個頁面時,我收到 404 錯誤:“源服務器沒有找到目標資源的當前表示,或者不愿意透露一個存在。”
這段代碼肯定適用于另一臺裝有 Tomcat 的 PC,但不適用于我的。
HelloServlet.java
import java.io.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
public class HelloServlet extends HttpServlet {
private String message;
public void init() {
message = "Hello World!";
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
response.setContentType("text/html");
// Hello
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("<h1>" message "</h1>");
out.println("</body></html>");
}
public void destroy() {
}
}
網頁.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
</web-app>
索引.jsp
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<title>JSP - Hello World</title>
</head>
<body>
<h1><%= "Hello World!" %></h1>
<br/>
<a href="HelloServlet">Hello Servlet</a>
</body>
</html>
專案結構
|____resources
|____webapp
| |____index.jsp
| |____WEB-INF
| | |____web.xml
|____java
| |____HelloServlet.java
我應該怎么做才能解決我的問題?
uj5u.com熱心網友回復:
我解決了安裝 Tomcat 8.5.70 的問題
我不知道 Tomcat 10 出了什么問題,但是 8.5.70 可以在同一個專案中正常作業。
更新:
問題在于進口。Tomcat 10 使用雅加達。* 包而不是javax。*.
謝謝每一位的建議。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/317357.html
上一篇:ConnectionPoolTimeoutExceptionatcaller[springwebapplicaiton]記錄但服務器上沒有日志[springboot]
