java ssh 那一层应该捕获异常_ssh经典异常!

我对异常抛出的情况作啦一个总结,下面的是我在做项目的时候,处理抛出来的经典异常。

严重: action: null

java.lang.ClassNotFoundException: org.springframework.web.struts.ContextLoaderPlugIn

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)

at org.apache.struts.util.RequestUtils.applicationClass(RequestUtils.java:124)

at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:172)

at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:147)

at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:842)

at org.apache.struts.action.ActionServlet.init(ActionServlet.java:359)

at javax.servlet.GenericServlet.init(GenericServlet.java:212)

at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1172)

at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:992)

at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4058)

at org.apache.catalina.core.StandardContext.start(StandardContext.java:4371)

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)

at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:627)

at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:511)

at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1231)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)

at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)

at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)

at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1471)

at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:824)

at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:350)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

at java.lang.Thread.run(Thread.java:619)2009-6-13 19:47:25 org.apache.catalina.core.ApplicationContext log

这个异常我看不少人都遇到吧,看着这个异常,你觉得是不是很郁闷,刚开始看到这个action: null就想:“是Struts里出啦问题,肯定是参数不对应ActionForm造成的吧!”然后就拼命地在页面和ActionForm来作对照,对来对去都是一样啊!怎么还是有错呢?刚刚开始我也是这样想的,可是做啦一大堆的无用功后,就发现我这种想法是错的!每次部署后还是这个错,你再细心地看下面的那个错误“java.lang.ClassNotFoundException: org.springframework.web.struts.ContextLoaderPlugIn”,这个org.springframework.web.struts.ContextLoaderPlugIn这个东西是不是很熟悉呢?仔细找下看,发现你的Struts-config.xml里面是不是也有这样一段话:

value="/WEB-INF/applicationContext.xml"/>

问题就出在这里啦!不过有些人找到问题所在后,也不会认为这里有问题,就算这里有问题,最多就是Spring的配置文件不对应!然后就去修改一下配置文件,可是还是于是无补!

我经过一段时间的思考后,就想啦一下,这个既然是Spring的配置文件,那一定和它的插件有关,是不是Spring和Struts整合不好呢?然后就查了一下库文件,发现Spring库文件导入的是很少!上网查下资料,发现对于这个问题的很少有答案,有人提出的可是找不到问题所在!我就去啦Spring的官网下载它的库文件和一些相应的资料来,在找资料的过程中,我也下载啦一个叫spring-struts.jar的库文件,这个文件看起来好象是Spring整合Struts的库文件!有啦这几个东西,我就开始开工测试

我就先按我的猜想,先导入spring-struts.jar这文件,部署后,发现没错误,运行也没错!果然证实我的想法没错

然后我还把下载来的Spring官网的最新的库文件,发现找不到spring-struts.jar这个库文件。然后我一个个测试后,原来这个库文件是集成在spring-web.jar里面啦!

我把spring-struts.jar去掉后,导入Spring官方的最新的相关库文件后(不能全部导,全部导入也会有错误,用到的才能导!),程序也没发生任何错误

以下的是我用到的库文件,本人测试过没问题

http://www.blogjava.net/Files/czmchen/ssh中Spring的库文件.rar

http://www.blogjava.net/Files/czmchen/spring-struts.jar.zip

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556530.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

默认文献工具_工具分享??超好用的SCI外文文献下载工具

第一步:打开工具第二步:查找目标文献的DOI号(知网、谷歌学术等等...),然后复制。第三步:粘贴到工具里面,然后点击「立即下载」第四步:点击立即下载之后,会自动打开默认浏…

java 变量的调用方法_java类变量的调用方式

java类变量的调用方式从类的内部调用类变量,可以使用类名.变量,也可以直接使用变量进行调用:public class Test {static byte a 1;static short b 2;​public static void main(String[] args) {System.out.println("a"a);System…

Redis之Redis的事务

1.Redis的事务是什么 Redis 事务的本质是一组命令的集合,事务支持一次执行多个命令,一个事务中所有命令都会被序列化。(redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令). 1.1reids事务的特点 事务同命令一样都是Redis最小的执行单位&#xff0…

idea 设置内存_IDEA新特性:提前知道代码怎么走!

作者:简简单单OnlineZuozuo原文链接:https://blog.csdn.net/qq_15071263/article/details/104186309新特性IDEA - 2020.1 版本针对调试器和代码分析器的改进,值得期待1、对于调试器的加强:数据流分析辅助2、调试加强:属…

64位ie加载java失败_java-无法在AMD 64位平台上加载IA 32位.dll

java-无法在AMD 64位平台上加载IA 32位.dll我正在尝试通过此页面上的JNI包装器使用Java中的SVMLight:static {System.loadLibrary("lib/JNI_SVM-light-6.01/lib/svmlight");}我收到以下错误:... lib \ JNI_SVM-light-6.01 \ lib \ svmlight.dl…

Redis的内部运作机制——Redis详解

本文将分五个部分来分析和总结Redis的内部机制,分别是:Redis数据库、Redis客户端、Redis事件、Redis服务器的初始化步骤、Redis命令的执行过程。 首先介绍一下Redis服务器的状态结构。Redis使用一个类型为“redisServer”的数据结构来保存整个Redis服务…

selenium之 chromedriver与chrome版本映射表_NLP实战篇之tf2训练与评估

本文是基于tensorflow2.2.0版本,介绍了模型的训练与评估。主要介绍了tf.keras的内置训练过程,包括compile、fit,其中compile中包含优化器、loss与metrics的使用,内置api中还包含了很多辅助工具,在Callback中进行介绍&a…

java会被rust替代吗_自从尝了 Rust,Java 突然不香了

Rust 是软件行业中相对而言比较新的一门编程语言,如果从语法上来比较,该语言与 C 其实非常类似,但从另一方面而言,Rust 能更高效地提供许多功能来保证性能和安全。而且,Rust 还能在无需使用传统的垃圾收集系统的情况下…

redis单线程原理___Redis为何那么快-----底层原理浅析

redis单线程原理 redis单线程问题 单线程指的是网络请求模块使用了一个线程(所以不需考虑并发安全性),即一个线程处理所有网络请求,其他模块仍用了多个线程。 1. 为什么说redis能够快速执行 (1) 绝大部分请求是纯粹的内存操作…

asm 查看 数据文件 修改 时间_Oracle的ASM介绍及管理

Oracle的ASM介绍及管理Oracle经历过的文件系统历史操作系统--逻辑卷管理器(LVM):管理文件相对容易,性能较差裸设备:管理文件相对困难,性能好OCFS(Oracle Cluster File System):是ORACLE数据库文件系统ASM(Automatic Storage Manag…

深入理解 Redis Template及4种序列化方式__spring boot整合redis实现RedisTemplate三分钟快速入门

概述 使用Spring 提供的 Spring Data Redis 操作redis 必然要使用Spring提供的模板类 RedisTemplate, 今天我们好好的看看这个模板类 。 RedisTemplate 看看4个序列化相关的属性 ,主要是 用于 KEY 和 VALUE 的序列化 。 举个例子,比如说我们…

java仿聊天室项目总结_Java团队课程设计-socket聊天室(Day4总结篇)

Java团队课程设计-socket聊天室(Day4总结篇)团队名称:ChatRoom项目git地址:git提交记录(仅截取部分):面向对象设计包图、类图包图UML类图总结:首先总结一下这几天遇到的问题和解决方案使用ObjectInputStream/ObjectOutputStream的…

python基础代码技巧_Python 代码优化技巧(二)

Python 是一种脚本语言,相比 C/C 这样的编译语言,在效率和性能方面存在一些不足,但是可以通过代码调整来提高代码的执行效率。本文整理一些代码优化技巧。 代码优化基本原则代码正常运行后优化。 很多人一开始写代码就奔着性能优化的目标&…

rpm 讲解

CentOS7主要有rpm和yum这两种包软件的管理。两种包的管理各有用处,其中主要区别是:YUM使用简单但需要联网,YUM会去网上的YUM包源去获取所需要的软件包。而RPM的需要的操作经度比较细,需要我们做的事情比较多。 软件包的安装和卸是…

java顺序表冒泡排序_冒泡排序就这么简单 - Java3y的个人空间 - OSCHINA - 中文开源技术交流社区...

冒泡排序就这么简单在我大一的时候自学c语言和数据结构,我当时就接触到了冒泡排序(当时使用的是C语言编写的)。现在大三了,想要在暑假找到一份实习的工作,又要回顾一下数据结构与算法的知识点了。排序对我们来说是一点也不陌生了,…

python 多线程和协程结合_如何让 python 处理速度翻倍?内含代码

阿里妹导读:作为在日常开发生产中非常实用的语言,有必要掌握一些python用法,比如爬虫、网络请求等场景,很是实用。但python是单线程的,如何提高python的处理速度,是一个很重要的问题,这个问题的…

python批量生成图_利用Python批量生成任意尺寸的图片

实现效果 通过源图片,在当前工作目录的/img目录下生成1000张,分别从1*1到1000*1000像素的图片。 效果如下:目录结构 实现示例 # -*- coding: utf-8 -*- import threading from PIL import Image image_size range(1, 1001) def start(): for…

Mysql 如果有多个可选条件怎么加索引_MySQL|mysql-索引

1、索引是什么 1.1索引简介 索引是表的目录,是数据库中专门用于帮助用户快速查询数据的一种数据结构。类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,以及快速定位查询数据。对于索引,会保存在额外的文件…

java 全双工服务器_利用Java实现串口全双工通讯_JAVA实例教程_IT部落

本文介绍了一个简单的通过串口实现全双工通讯的Java类库,该类库大大的简化了对串口进行操作的过程一个嵌入式系统通常需要通过串口与其主控系统进行全双工通讯,譬如一个流水线控制系统需要不断的接受从主控系统发送来的查询和控制信息,并将执…

python语言三大基本控制结构_Python基础(4) 控制结构

三种控制流语句:if、for、while,Python用缩进表明成块的代码,以四个空格表示隶属关系,所以语句不能随意缩进。 1 条件语句 (1)简单的if语句 a 10 if a > 0: #末尾带“:” print(这是一个整数…