简体   繁体   English

运行Java Servlet时发生ClassNotFoundException

[英]Classnotfoundexception while running java servlet

I see this error very common in the blogs and SO but I could not somehow resolve it.. 我看到此错误在博客和SO中非常普遍,但我无法以某种方式解决。

Error: 错误:

exception 例外

javax.servlet.ServletException: Error instantiating servlet class DemoServlet
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
    org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    java.lang.Thread.run(Thread.java:701)
root cause

java.lang.ClassNotFoundException: DemoServlet
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
    org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    java.lang.Thread.run(Thread.java:701)

Project folder structure.. 项目文件夹结构

[m1980@web449 sampleproject]$ tree .
.
├── pom.xml
├── src
│   └── main
│       ├── java
│       │   └── com
│       │       └── prem
│       │           └── controller
│       │               └── DemoServlet.java
│       ├── resources
│       └── webapp
│           ├── index.jsp
│           └── WEB-INF
│               └── web.xml
└── target
    ├── classes
    │   └── com
    │       └── prem
    │           └── controller
    │               └── DemoServlet.class
    ├── maven-archiver
    │   └── pom.properties
    └── sampleproject
        ├── index.jsp
        ├── META-INF
        └── WEB-INF
            ├── classes
            │   └── com
            │       └── prem
            │           └── controller
            │               └── DemoServlet.class
            └── web.xml

22 directories, 9 files

Im able to start apache and it runs without any problem...when I try http://localhost/sampleproject it displays the index page(Hello World!)..but when I try /welcome I get the above error... 我能够启动apache并且它运行没有任何问题...当我尝试http://localhost/sampleproject它显示索引页(Hello World!)..但是当我尝试/ welcome时,出现上述错误...

web.xml web.xml中

<web-app>
  <display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>DemoServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>

</web-app>

Tomcat is looking for a package private class called DemoServlet . Tomcat正在寻找一个名为DemoServlet的包私有类。 You need to use the fully qualified class 您需要使用完全合格的课程

<servlet-class>com.prem.controller.DemoServlet</servlet-class>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在 Tomcat9 上运行时,在 Maven/Jersey web 服务上获取 java.lang.ClassNotFoundException: jakarta.servlet.Filter - Getting java.lang.ClassNotFoundException: jakarta.servlet.Filter on Maven/Jersey web service while running on Tomcat 9 java.lang.ClassNotFoundException:连接 oracle 数据库时 Servlet 中的驱动程序 - java.lang.ClassNotFoundException: driver in Servlet while connecting oracle database 运行程序时发生ClassNotFoundException - ClassNotFoundException while running program 运行jar时发生ClassNotFoundException - ClassNotFoundException while running jar 在Unity中运行Android活动时出现java.lang.ClassNotFoundException - java.lang.ClassNotFoundException while running Android activity in Unity 运行时出现 ClassNotFoundException spring 引导多版本 jar 和 java 11 - ClassNotFoundException while running spring boot multi release jar with java 11 运行Spring MVC Web应用程序时出现Java ClassNotFoundException - Java ClassNotFoundException while running spring mvc web-app 在 cmd 中运行基于 gradle 的 Java 应用程序时出现 ClassNotFoundException - ClassNotFoundException while running gradle based Java Application in cmd eclipse servlet java.lang.ClassNotFoundException:javax.servlet.Servlet - eclipse servlet java.lang.ClassNotFoundException: javax.servlet.Servlet “引起:java.lang.ClassNotFoundException:javax.servlet.ServletConfig”运行Spring引导程序时 - "Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletConfig" when running Spring Boot program
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM