2023年11月29日发(作者:)
java常见异常大全
算术异常类
空指针异常类
类型强制转换异常
数组负下标异常
数组下标越界异常
违背安全原则异常
文件已结束异常
文件未找到异常
字符串转换为数字异常
操作数据库异常
输入输出异常
方法未找到异常
ctMethodError
抽象方法错误。当应用试图调用抽象方法时抛出。
ionError
断言错。用来指示一个断言失败的情况。
ircularityError
类循环依赖错误。在初始化一个类时若检测到类之间循环依赖则抛出该异
常。
ormatError
类格式错误。当Java虚拟机试图从一个文件中读取Java类而检测到该文件
的内容不符
合类的有效格式时抛出。
错误。是所有错误的基类用于标识严重的程序运行问题。这些问题通常描述
一些不应被应
用程序捕获的反常情况。
ionInInitializerError
初始化程序错误。当执行一个类的静态初始化程序的过程中发生了异常时抛
出。静态初始
化程序是指直接包含于类中的static语句段。
lAccessError
违法访问错误。当一个应用试图访问、修改某个类的域或者调用其方
法但是又
违反域或方法的可见性声明则抛出该异常。
atibleClassChangeError
实例化错误。当一个应用试图通过Java的new操作符构造一个抽象类或者接
口时抛出该异常.
alError
内部错误。用于指示Java虚拟机发生了内部错误。
eError
链接错误。该错误及其所有子类指示某个类依赖于另外一些类在该类编译之
后被依赖的
类改变了其类定义而没有重新编译所有的类进而引发错误的情况。
sDefFoundError
未找到类定义错误。当Java虚拟机或者类装载器试图实例化某个类而找不
到该类的定义
时抛出该错误。
FieldError
域不存在错误。当应用试图访问或者修改某类的某个域而该类的定义中没有
该域的定义时
抛出该错误。
MethodError
方法不存在错误。当应用试图调用某类的某个方法而该类的定义中没有该方
法的定义时抛
出该错误。
emoryError
内存不足错误。当可用内存不足以让Java虚拟机分配给一个对象时抛出该错
误。
verflowError
堆栈溢出错误。当一个应用递归调用的层次太深而导致堆栈溢出时抛出该错误。
一般在死循
环中出现
Death
线程结束。当调用Thread类的stop方法时抛出该错误用于指示线程结束。
nError
未知错误。用于指示Java虚拟机发生了未知严重错误的情况。
sfiedLinkError
未满足的链接错误。当Java虚拟机未找到某个类的声明为native方法的本机
语言定义时抛
出。
ortedClassVersionError
Error
验证错误。当验证器检测到某个类文件中存在内部不兼容或者安全问题时抛出
该错误。
lMachineError
虚拟机错误。用于指示虚拟机被破坏或者继续执行操作所需的资源不足的情
况。
eticException
算术条件异常。譬如整数除零等。
ndexOutOfBoundsException
数组索引越界异常。当对数组的索引值为负数或大于等于数组大小时抛出。
toreException
数组存储异常。当向数组中存放非数组声明类型对象时抛出。
astException
类造型异常。假设有类A和不是B的父类或子类是A的实例那
么当强制将
O构造为类B的实例时抛出该异常。该异常经常被称为强制类型转换异常。
otFoundException
找不到类异常。当应用试图根据字符串形式的类名构造类而在遍历
CLASSPAH之后找不
到对应名称的class文件时抛出该异常。
otSupportedException
不支持克隆异常。当没有实现Cloneable接口或者不支持克隆方法时,调用其
clone()方法则
抛出该异常。
nstantNotPresentException
枚举常量不存在异常。当应用试图通过名称和枚举类型访问一个枚举对象但
该枚举对象并
lMonitorStateException
违法的监控状态异常。当某个线程试图等待一个自己并不拥有的对象的
监控器或者通
知其他线程等待该对象的监控器时抛出该异常。
lStateException
违法的状态异常。当在Java环境和应用尚未处于某个方法的合法调用状态而
调用了该方
法时抛出该异常。
lThreadStateException
违法的线程状态异常。当县城尚未处于某个方法的合法调用状态而调用了该
方法时抛出
异常。
utOfBoundsException
索引越界异常。当访问某个序列的索引值小于0或大于等于序列大小时抛出
该异常。
tiationException
实例化异常。当试图通过newInstance()方法创建某个类的实例而该类是一个
抽象类或接
口时抛出该异常。
uptedException
被中止异常。当某个线程处于长时间的等待、休眠或其他暂停状态而此时其
违法的状态异常。当在Java环境和应用尚未处于某个方法的合法调用状态而
调用了该方
法时抛出该异常。
lThreadStateException
违法的线程状态异常。当县城尚未处于某个方法的合法调用状态而调用了该
方法时抛出
异常。
utOfBoundsException
索引越界异常。当访问某个序列的索引值小于0或大于等于序列大小时抛出
该异常。
tiationException
实例化异常。当试图通过newInstance()方法创建某个类的实例而该类是一个
抽象类或接
口时抛出该异常。
uptedException
被中止异常。当某个线程处于长时间的等待、休眠或其他暂停状态而此时其
他的线程通过
Thread的interrupt方法终止该线程时抛出该异常。
veArraySizeException
数组大小为负值异常。当使用负数大小值创建数组时抛出该异常。
FieldException
属性不存在异常。当访问某个类的不存在的属性时抛出该异常。
MethodException
方法不存在异常。当访问某个类的不存在的方法时抛出该异常。
interException
空指针异常。当应用试图在要求使用对象的地方使用了null时抛出该异常。
譬如调用
null对象的实例方法、访问null对象的属性、计算null对象的长度、使用throw
语句抛出
null等等。
FormatException
tyException
安全异常。由安全管理器抛出用于指示违反安全情况的异常。
IndexOutOfBoundsException
字符串索引越界异常。当使用索引值访问某个字符串中的字符而该索引值小
于0或大于
等于序列大小时抛出该异常。
tPresentException
类型不存在异常。当应用试图以某个类型名称的字符串表达方式访问该类型
但是根据给定
的名称又找不到该类型是抛出该异常。该异常与ClassNotFoundException的
区别在于该异
常是不被检查异常而ClassNotFoundException是
被检查异
常。
ortedOperationException
不支持的方法异常。指明请求的方法不被支持情况的异常。
异常
eption: Cannot retrieve mapping for action /Login
是你的
action名字
可能原因
action没有再 中定义或没有找到匹配的例如在
JSP文件中使
用 异常请查看 中的定义部分有时可能是打错了字符或者是某些不符合规则 可以使用 strutsconsole工具来检查。 ------------------------------------------------------------------------------------------------------- ---------- 异常 Exception: Cannot retrieve definition for form bean null 可能原因 这个异常是因为Struts根据中的mapping没有找到action期 望的form bean。大部分的情况可能是因为在form-bean中设置的name属性和action中 设置的name 属性不匹配所致。换句话说和form都应该各自有一个name属性并 且要精确匹 配包括大小写。这个错误当没有name属性和action关联时也会发生如果 没有在action 中指定name属性那么就没有name属性和action相关联。当然当action制 作某些控制 时譬如根据参数值跳转到相应的jsp页面而不是处理表单数据这是就不 用name属性 这也是action的使用方法之一。 ------------------------------------------------------------------------------------------------------- ---------- 异常 No action instance for path /xxxx could be created 可能原因 特别提示因为有很多中情况会导致这个错误的发生所以推荐大家调高你的 web服务器 的日志/调试级别这样可以从更多的信息中看到潜在的、在试图创建action类 时发生的错 误这个action类你已经在中设置了关联即添加了 标签。 在中通过action标签的class属性指定的action类不能被找 到有很多种原 因例如定位编译后的.class文件失败。Failure to place compiled .class file for the action in the classpath (在web开发中的的位置在r WEB-所以 你的action class必须要在这个目录下。例如你的action类位于WEB- INF/classes/action/, 那么在中设置action的属性type时就是). 拼写错误这个也时有发生并且不易找到特别注意第一个字母的大小写和 包的名称。 ------------------------------------------------------------------------------------------------------- ---------- 异常 eption: No getter method for property username of bean 可能原因 没有位form bean中的某个变量定义getter 方法 这个错误主要发生在表单提交的FormBean中用struts标记 property=”username”>时在FormBean中必须有一个getUsername()方法。 注意字母“U”。 ------------------------------------------------------------------------------------------------------- ---------- 异常 sDefFoundError: org/apache/struts/action/ActionForm 可能原因 这个错误主要发生在在classpath中找不到相应的Java .class文件。如果这个 错误发生在 web应用程序的运行时主要是因为指定的class文件不在web server的 classpath中 -INF/classes 和 /WEB-。在上面的错误中原因是找不到 ActionForm类。 ------------------------------------------------------------------------------------------------------- ---------- 异常 eption: Exception creating bean of class Form: {1} 可能原因 Instantiating Struts-provided ActionForm class directly instead of instantiating a class derived off ActionForm. This mightoccur implicitly if you specify that a form- bean is this Struts ActionForm class rather than specifying a child of this classfor the form- bean. Not associating an ActionForm-descended class with an action can also lead to this error. ------------------------------------------------------------------------------------------------------- ---------- 异常 eption: Cannot find ActionMappings or ActionFormBeans collection 可能原因 不是标识Struts actionServlet的 mapping>标记 或者两者都没有在中声明。 在中的打字或者拼写错误也可导致这个异常的发生。例如缺 少一个标记的 关闭符号/>。最好使用struts console工具检查一下。 另外-on-startup必须在中声明这要么是一个空标记要么指 定一个数值 这个数值用来表servlet运行的优先级数值越大优先级越低。 还有一个和使用load-on-startup有关的是使用Struts预编译JSP文件时也可能 导致这个异 常。 ------------------------------------------------------------------------------------------------------- ---------- 异常 interException at dURL(:1223) 可能原因 在中的forward元素缺少path属性。例如应该是如下形式 ------------------------------------------------------------------------------------------------------- ---------- 异常 eption: Cannot find bean in any scope Probable Causes 试图在Struts的form标记外使用form的子元素。这常常发生在你在
Struts的html标记。另外要注意可能你不经意使用的无主体的标记如
这样web 服务器解析时就当作一个无主体的标记随后使用的所有标记
都被认为是
在这个标记之外的如又使用了
引入HTML
标记库时你使用的prefix的值不是html。
-------------------------------------------------------------------------------------------------------
----------
异常
eption: Missing message for key
Probable Causes
这个key的值对没有在资源文件ties中定义。如
果你使用
eclipse时经常碰到这样的情况当项目重新编译时eclipse会自动将classes
目录下的资
源文件删除。
资源文件ties 不在classpath中应将资源文件放
到
WEB-INF/classes 目录下当然要在中定义)
-------------------------------------------------------------------------------------------------------
----------
异常
Cannot find message resources under key
E
可能原因
很显然这个错误是发生在使用资源文件时而Struts没有找到资源文件。
Implicitly trying to use message resources that are not available (such as
using empty
html:options tag instead of specifyingthe options in its body -- this assumes
options are
specified in ties file)
XML parser issues -- too many, too few, incorrect/incompatible versions
-------------------------------------------------------------------------------------------------------
---------
异常
Strange and seemingly random characters in HTML and on screen, but not in
original JSP
or servlet.
可能原因
混和使用Struts的html:form标记和标准的HTML标记不正确。
使用的编码样式在本页中不支持。
-------------------------------------------------------------------------------------------------------
----------
异常
"Document contained no data" in Netscape
No data rendered (completely empty) page in Microsoft Internet Explorer
可能原因
使用一个Action的派生类而没有实现perform()方法或execute()方法。在
Struts1.0中实现
的是perform()方法在Struts1.1中实现的是execute()方法但Struts1.1向
后兼容perform()
方法。但你使用Struts1.1创建一个Action的派生类并且实现了execute()方
法而你在
Struts1.0中运行的话就会得到"Document contained nodata" error message
in Netscape
or a completely empty (no HTML whatsoever) page rendered in Microsoft
Internet
-------------------------------------------------------------------------------------------------------
---------------
-----
异常
ServletException: te
解决方案
在用Struts上传文件时,遇到了tException:
te异常。
我的ActionServlet并没有用到BeanUtils这些工具类。后来仔细检查代码发现
是在jsp文件
里的form忘了加enctype="multipart/form-data" 了。所以写程序遇到错误或异
常应该从多
方面考虑问题存在的可能性想到系统提示信息以外的东西。
-------------------------------------------------------------------------------------------------------
---------------
------
1. 定义Action后, 如果指定了name, 那么必须要定义一个与它同名的
FormBean才能进
行form映射.2. 如果定义Action后, 提交页面时出现 "No input attribute for
mapping
" 错误, 则需要在其input属性中定义转向的页面.3. 如果插入新的数据时
出现
"Batch update row count wrong:..." 错误, 则说明中指定的key
的类型为原
始类型(int, long),因为这种类型会自动分配值, 而这个值往往会让系统认为已经
存在该记录,
正确的方法是使用r或对象.4. 如果插入数据时
出现
"argument type mismatch" 错误, 可能是你使用了Date等特殊对象, 因为struts
不能自动
从String型转换成Date型,所以, 你需要在Action中手动把String型转换成
Date型.5.
Hibernate中, Query的iterator()比list()方法快很多.6. 如果出现 "equal symbol
expected"
错误, 说明你的strtus标签中包含另一个标签或者变量, 例如:
或者
这样的情况...
-------------------------------------------------------------------------------------------------------
---------------
-----
错误
mmarException: Could
not execute JDBC batch update原因与解决 因为Hiber或者
Eclipse
本身的生成*.工具中包含有表示
数据库名称
这样的属性,将该属性删除就可以了
-------------------------------------------------------------------------------------------------------
---------------
-----
错误dException: deleted object would be re-
saved by
cascade (remove deleted object from associations)
原因与解决
方法1 删除Set方的cascade
方法2 解决关联关系后再删除
方法3 在many-to-one方增加cascade 但值不能是none
最后一招
检查一下hashCode equals是否使用了id作为唯一标示的选项了我用
时是没有
问题的但是用了native就不行了怎么办删除啊
-------------------------------------------------------------------------------------------------------
---------------
------
问题今天用发现原来很好用的系统不能用了反复测试发
现页面中不能
包含 否则会出现以下提示-type Exception
reportMessage
description The server encountered an internal error () that prevented it from
fulfilling this
Exception: /(1,1) Unable
to read TLD
"META-INF/tlds/" from JAR file"file:*****/WEB-INF/lib/":
原因更新
了工程用的lib文件夹下的发布时也发布了和。解决
把
删除就解决这个问题了。
-------------------------------------------------------------------------------------------------------
---------------
-------
错误
原因发现 dao 实例、 manage 实例等需要注入的东西没有被注入俗称空
指针异常
解决这个时候你应该查看日志文件默认是应用服务器的 log 文件比如
Tomcat 就
是 [Tomcat 安装目录 你会发现提示你可能是
eationException: Error creating
bean with
name 'sf' defined in ServletContextresource [/WEB-
INF/]:
Initialization of bean failed; nested exception
ateException: could
not configure from URL:
file:src/ateException: could not
configure from URL: file:src/hiber……………………….Caused
by:
tFoundException: 可能是
eationException: Error creating
bean with
name 'sessionFactory' defined inServletContext resource
[/WEB-INF/]: Initialization of bean failed; nested
exception
gException: Resource:
com/mcc/coupon/model/
not gException: Resource:
com/mcc/coupon/model/ not found然后你就知道原因是因
为配置文件
的解析出了错误这个通过 Web 页面是看不出来的。更多的是持久化影射文
件出的错误
导致了没有被解析当然你需要的功能就无法使用了。
-------------------------------------------------------------------------------------------------------
---------------
------
错误let action
threw exception
eption: Cannot retrieve mapping for action
/settlementTypeManage
或者 type Status report message Servlet action is not available
description The requested resource (Servlet action is not available) is not
available.
原因同 上
-------------------------------------------------------------------------------------------------------
---------------
------
错误StandardWrapperValve[jsp]: e() for servlet jsp threw


发布评论