新人求问已导入jar包还是报错java.lang.ClassNotFoundException?传智springmvc视频程序

Geralt3 2017-07-10 04:36:06
各位,在导了spring-webmvc-4.3.2.Release.jar包的情况下还是报错java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet.class
完整错误代码:
type Exception report

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

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.class
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Unknown Source)

root cause
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet.class
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1892)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Unknown Source)


web.xml文件代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>SpringMVC</display-name>
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet.class</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>

springmvc.xml文件代码如下:

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">
<!-- 配置Handler -->
<bean name="/queryItems.action" class="ssm.controller.ItemsController1" />
<!-- 处理器映射器 -->
<bean
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<!-- 处理器适配器 -->
<bean
class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
<!-- 视图解析器 -->
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
</bean>
</beans>

项目结构如图


jar包版本4.3.2,tomcat7,jdk1.8
google有答案说在项目属性Deployment Assembly中添加Maven Dependencies选项到Java Build Path Entries可解决,可我不是Maven项目没这个选项。
考虑过可能是包冲突的问题,只导了这个包还有jstl及standard包还是不能解决。
希望得到解答!谢谢
...全文
456 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Geralt3 2017-07-10
  • 打赏
  • 举报
回复
引用 8 楼 qq_31395143 的回复:
404错误的原因可能是ItemsController类没有注入,可以试试在spring配置文件中加<bean>进行注释,或者直接用注解的方式进行注入
引用 5 楼 wanghaojava 的回复:
[quote=引用 3 楼 Geralt3 的回复:] [quote=引用 1 楼 pany1209 的回复:] DispatcherServlet.class加上。class肯定错误。。。。写的是DispatcherServlet的全限定名。。去掉。class
谢谢大神,之前ctrl鼠标放上去不变的,现在变成小手了。但是现在又出现了404的问题 [/quote] 你有这个针对这个URL的controller处理么[/quote] 谢谢各位大佬,问题已经解决了,是缺了commons-logging.jar包,已经实验成功
萧尽悠然 2017-07-10
  • 打赏
  • 举报
回复
404错误的原因可能是ItemsController类没有注入,可以试试在spring配置文件中加<bean>进行注释,或者直接用注解的方式进行注入
Geralt3 2017-07-10
  • 打赏
  • 举报
回复
引用 5 楼 wanghaojava 的回复:
[quote=引用 3 楼 Geralt3 的回复:] [quote=引用 1 楼 pany1209 的回复:] DispatcherServlet.class加上。class肯定错误。。。。写的是DispatcherServlet的全限定名。。去掉。class
谢谢大神,之前ctrl鼠标放上去不变的,现在变成小手了。但是现在又出现了404的问题 [/quote] 你有这个针对这个URL的controller处理么[/quote] 没贴上ItemsController1类不好意思 package ssm.controller; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; import ssm.po.Items; public class ItemsController1 implements Controller { @Override public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { List<Items> itemsList = new ArrayList<Items>(); Items items_1 = new Items(); items_1.setName("联想笔记本"); items_1.setPrice(6000f); items_1.setDetail("ThinkPad T430 联想笔记本电脑!"); Items items_2 = new Items(); items_2.setName("苹果手机"); items_2.setPrice(5000f); items_2.setDetail("iphone6苹果手机!"); itemsList.add(items_1); itemsList.add(items_2); ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("itemsList", itemsList); modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp"); return modelAndView; } } itemsList.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>查询商品列表</title> </head> <body> <form action="${pageContext.request.contextPath }/item/queryItem.action" method="post"> 查询条件: <table width="100%" border=1> <tr> <td><input type="submit" value="查询" /></td> </tr> </table> 商品列表: <table width="100%" border=1> <tr> <td>商品名称</td> <td>商品价格</td> <td>生产日期</td> <td>商品描述</td> <td>操作</td> </tr> <c:forEach items="${itemsList }" var="item"> <tr> <td>${item.name }</td> <td>${item.price }</td> <td><fmt:formatDate value="${item.createtime}" pattern="yyyy-MM-dd HH:mm:ss" /></td> <td>${item.detail }</td> <td><a href="${pageContext.request.contextPath }/item/editItem.action?id=${item.id}">修改</a></td> </tr> </c:forEach> </table> </form> </body> </html>
什么都不能 2017-07-10
  • 打赏
  • 举报
回复
你不是看视频吗,好好看怎么会有问题?
JavaDev716 2017-07-10
  • 打赏
  • 举报
回复
引用 3 楼 Geralt3 的回复:
[quote=引用 1 楼 pany1209 的回复:] DispatcherServlet.class加上。class肯定错误。。。。写的是DispatcherServlet的全限定名。。去掉。class
谢谢大神,之前ctrl鼠标放上去不变的,现在变成小手了。但是现在又出现了404的问题 [/quote] 你有这个针对这个URL的controller处理么
Geralt3 2017-07-10
  • 打赏
  • 举报
回复
引用 2 楼 wanghaojava 的回复:
整成maven结构啊,这年头谁还自己找jar包啊
嘿嘿,新人还没学到maven呢
Geralt3 2017-07-10
  • 打赏
  • 举报
回复
引用 1 楼 pany1209 的回复:
DispatcherServlet.class加上。class肯定错误。。。。写的是DispatcherServlet的全限定名。。去掉。class


谢谢大神,之前ctrl鼠标放上去不变的,现在变成小手了。但是现在又出现了404的问题


JavaDev716 2017-07-10
  • 打赏
  • 举报
回复
整成maven结构啊,这年头谁还自己找jar包啊
李德胜1995 2017-07-10
  • 打赏
  • 举报
回复
DispatcherServlet.class加上。class肯定错误。。。。写的是DispatcherServlet的全限定名。。去掉。class

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧