• 实例化Servlet类[com.gowork.servlet.helloservlet]异常【BUG已解决】


    一.BUG描述

    在使用Servlet的映射,浏览器输入映射路径后爆出如下错误:

    类型 异常报告
    消息 实例化Servlet类[com.gowork.servlet.helloservlet]异常
    描述 服务器遇到一个意外的情况,阻止它完成请求。
    例外情况

    jakarta.servlet.ServletException: 实例化Servlet[com.gowork.servlet.helloservlet]异常
    	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
    	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
    	org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:690)
    	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:356)
    	org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
    	org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
    	org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:867)
    	org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1762)
    	org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    	org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
    	org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
    	org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	java.base/java.lang.Thread.run(Thread.java:833)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在这里插入图片描述

    二.BUG已解决

    原因分析:我现在的tomcat版本是10,我们去下面官网下载9版

    https://tomcat.apache.org/download-90.cgi

    在项目里用替换tomcat9来把tomcat10替换掉:
    在这里插入图片描述
    在这里插入图片描述

    重新启动项目+访问成功:
    在这里插入图片描述
    映射文件如下:

        <servlet>
            <servlet-name>helloservlet-name>
            <servlet-class>com.gowork.servlet.helloservletservlet-class>
        servlet>
    
        <servlet-mapping>
            <servlet-name>helloservlet-name>
            <url-pattern>/hellourl-pattern>
        servlet-mapping>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    三.Servlet(忽略)

    Servlet是一个服务HTTP请求,它实现了javax。Servlet是Servlet接口的Java类。Web应用程序开发人员通常编写servlet来扩展javax。Servlet。Http Httpservlet和实现servlet接口的抽象类专门用于处理Http请求。

    3.1Servlet部署

    默认情况下,servlet应用程序位于路径/webapps/root中,类文件位于/webapps/root/WEB-INF/classes中。
    如果有一个完全限定的类名com。那么这个servlet类必须位于WEB-INF/classes/COM/Myorg/Myservlet类中。
    将HelloWorld类放在/webapps/root/WEB-INF/classes中,并放在WEB XML文件中。

    <web-app>      
        <servlet>
            <servlet-name>HelloWorldservlet-name>
            <servlet-class>HelloWorldservlet-class>
        servlet>
    
        <servlet-mapping>
            <servlet-name>HelloWorldservlet-name>
            <url-pattern>/HelloWorldurl-pattern>
        servlet-mapping>
    web-app>  
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    上述条目将在web上的XML文件中的<web app>标记中创建。
    此文件中可能已经有各种条目可用,但不要在意。
    基本完成后,让我们使用\bin\startup.Bat(在Windows上)或/bin/startup.Sh(在Linux/Solaris等上)启动Tomcat服务器,最后输入浏览器的地址栏http://localhost:8080/HelloWorld 。 如果一切顺利,将看到以下结果:
    在这里插入图片描述

  • 相关阅读:
    React-View-UI组件库封装—— Notification通知提醒框
    Web APIs——环境对象this以及回调函数
    FAlphaBlend——Unreal中的插值助手
    跨行转做产品经理岗位,怎么入门?
    可验证的idea才是真的
    networkPolicy初识
    【m98】视频缓存PacketBuffer 2 :nack等填充包信息后插入
    可靠/可用性介绍
    idea项目层级不见了
    数组元素全排列Java
  • 原文地址:https://blog.csdn.net/weixin_52908342/article/details/126333940