gpt4 book ai didi

java - HTTP 状态 500 - 实例化 servlet 类 org.springframework.web.servlet.DispatcherServlet 时出错

转载 作者:行者123 更新时间:2023-11-29 04:38:27 25 4
gpt4 key购买 nike

请不要将此帖子标记为重复帖子,因为我在相关问题中没有找到任何好的资源。

使用的技术:- Spring MVC 4.3.3.发布 Gradle 3.1 Tomcat 9.0

我创建了一个动态 web 项目,当我运行它时,出现以下错误

HTTP Status 500 - Error instantiating servlet class org.springframework.web.servlet.DispatcherServlet

type Exception report

message Error instantiating servlet class org.springframework.web.servlet.DispatcherServlet

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Error instantiating servlet class org.springframework.web.servlet.DispatcherServlet
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:522)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:1102)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:788)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1485)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:745)
root cause

java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1299)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1133)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:522)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:1102)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:788)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1485)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:745)

它说它找不到调度程序 servlet 类但是当我 ctrl + click spring-dispatcher-servlet 中的调度程序 servlet 路径时,它登陆到spring Dispatcher Servlet 类。我找不到这个问题的根本原因。

这是我的 web.xmlspring-dispatcher-servlet.xml 文件

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>MenuOrder</display-name>

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<servlet>
<servlet-name>spring-dispatcher</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>spring-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

</web>

spring-dispatcher-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

<bean id = "HandlerMapping" class = "org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>

<bean id = "viewResolver"
class = "org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name = "prefix">
<value>/WEB-INF/</value>
</property>

<property name = "sufix">
<value>.jsp</value>
</property>
</bean>

</beans>

项目目录

enter image description here

我的gradle.build文件

allprojects{
apply plugin: 'java'
apply plugin: 'eclipse-wtp'
group = 'com'
version = '0.0.1-SNAPSHOT'
}

subprojects{
tasks.withType(JavaCompile){
options.encoding = 'UTF-8'
}
}



allprojects {
task hello { task -> println "I'm $task.project.name" }
}


allprojects{

repositories {
mavenLocal()
jcenter()
mavenCentral()

}


dependencies {

// The production code uses the SLF4J logging API at compile time
// compile 'org.slf4j:slf4j-api:1.7.21'


//spring web
compile group: 'org.springframework', name: 'spring-webmvc', version: '4.3.3.RELEASE'

// spring core
compile group: 'org.springframework', name: 'spring-core', version: '4.3.3.RELEASE'

// spring context support
compile group: 'org.springframework', name: 'spring-context-support', version: '4.3.3.RELEASE'


// ORM dependencies

// spring jpa
compile group: 'org.springframework.data', name: 'spring-data-jpa', version: '1.10.4.RELEASE'

// hibernate-entity manager
compile group: 'org.hibernate', name: 'hibernate-entitymanager', version: '5.2.2.Final'

// End of ORM dependencies

// postgres connector
compile group: 'org.postgresql', name: 'postgresql', version: '9.4-1200-jdbc41'

// Junit
compile group: 'junit', name: 'junit', version: '4.12'

// servlet
compile group: 'javax.servlet', name: 'javax.servlet-api', version: '4.0.0-b01'

compile group: 'javax.el', name: 'javax.el-api', version: '2.2.1'

compile group: 'org.springframework', name: 'spring', version: '3.2.0.RC1'

}
}

整个项目代码可以在 https://github.com/viper-pranish/menu-order

项目结构中的依赖

enter image description here

最佳答案

你可以简单地在web.xml的标签下添加标签,它会起作用。

enter image description here

关于java - HTTP 状态 500 - 实例化 servlet 类 org.springframework.web.servlet.DispatcherServlet 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40256447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com