首页 > 其他分享 >【遇到的问题】Tomcat10中Servlet包名问题

【遇到的问题】Tomcat10中Servlet包名问题

时间:2022-10-11 18:34:38浏览次数:65  
标签:包名 http Servlet jakarta Tomcat10 import servlet javax

【遇到的问题】Tomcat10中Servlet包名问题

我在创建Servlet程序的过程中,发现的问题:

自己写的Servlet类:

package com.wang.servlet;
​
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
​
public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        PrintWriter writer = resp.getWriter();
        writer.print("Hello,Servlet");
    }
​
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }
}

在使用tomcat服务器,访问该Servlet类时,报了500的错误

image-20221011180621362

错误描述:这个类不是Servlet

 

通过上网搜索,我得知是tomcat10服务器的原因,如下:

tomcat10将 javax.servlet-api 换为 jakarta.servlet-api

所以与我之前导入的依赖不匹配

image-20221011181610117

 

 

解决方案:

  1. 将tomcat版本回退到9

  2. 导入新的依赖

    • 在maven仓库Maven Repository: Search/Browse/Explore (mvnrepository.com)

      搜索 jakarta.servlet-api

      image-20221011181836666

      将该依赖导入到pom.xml中

      image-20221011182014461

    • 导入后,在java类中,也需要将包名改为jakarta.servlet

      import jakarta.servlet.ServletException;
      import jakarta.servlet.http.HttpServlet;
      import jakarta.servlet.http.HttpServletRequest;
      import jakarta.servlet.http.HttpServletResponse;

然后解决了

image-20221011182302152

标签:包名,http,Servlet,jakarta,Tomcat10,import,servlet,javax
From: https://www.cnblogs.com/wztblogs/p/16780198.html

相关文章

  • Servlet Response对象的响应数据和响应乱码
    ServletResponse对象一.响应数据1.getWrite():字符流//页面中输出//获取字符输出流PrintWriterwrite=response.getWriter();//......
  • Tomcat容器、JSP和Servlet
    目录​​JSP​​​​Tomcat、JSP和Servlet ​​JSPJSP全名为JavaServerPages,其根本是一个简化的Servlet设计。JSP技术有点类似ASP技术,它是在传统的HTML网页中插入Java程......
  • Servlet 请求乱码问题
    Servlet请求乱码问题学习链接:020-Servlet-HttpServletRequest对象-请求乱码问题_哔哩哔哩_bilibili1.原因:在解析过程中默认使用的编码方式为ISO-8859-1(不支持中文),......
  • Servlet
     一、Servlet的生命周期过程:servlet类加载-->实例化-->服务-->销毁WebClient向Servlet容器(Tomcat)发出Http请求Servlet容器接收WebClient请求Servle......
  • ORA-01653 表 PDM91.RAWSERVLETREQUESTSTATS 无法通过1024 (在表空间 USERS 中) 扩展
    问题解决办法第一步:查询各表空间使用率SELECTtotal.tablespace_name,Round(total.MB,2)ASTotal_MB,Round(total.MB-free.MB,2)ASU......
  • Web 项目中 Servlet 的实现
    Web项目中Servlet的实现一、实现servlet1.创建一个servlet的一个普通java类先创建一个package:src-->new-->package创建一个Java 类:package-......
  • ServletContext、request、response
    一、上下文对象1、概述ServletContext官方叫servlet上下文,是一个接口。服务器启动的时候创建,服务器关闭的时候销毁,启动时候会为每一个工程创建一个对象,这个对象就是Servlet......
  • Servlet 入门
    一、Servlet基础使用1.创建web项目,导入Servlet依赖坐标(pom.xml)<dependencies><dependency><groupId>javax.servlet</groupId><artifactId>j......
  • servlet使用
    概述是运行在web服务器上的java程序,用来处理前端(客户端)的响应和请求生命周期Servlet对象是由tomcat服务器创建的。默认第一次浏览器中输入servlet访问时创建该对象,也可以通......
  • Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException--spr
    org.springframework.beans.factory.UnsatisfiedDependencyException:Errorcreatingbeanwithname'indexController':Unsatisfieddependencyexpressedthroughfie......