java中常见的错误.docx

上传人:啊飒飒 文档编号:10733423 上传时间:2021-06-01 格式:DOCX 页数:17 大小:36.48KB
返回 下载 相关 举报
java中常见的错误.docx_第1页
第1页 / 共17页
java中常见的错误.docx_第2页
第2页 / 共17页
java中常见的错误.docx_第3页
第3页 / 共17页
java中常见的错误.docx_第4页
第4页 / 共17页
java中常见的错误.docx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《java中常见的错误.docx》由会员分享,可在线阅读,更多相关《java中常见的错误.docx(17页珍藏版)》请在三一文库上搜索。

1、java中的常见错误项目中遇到的错误sql错误找不到列Unknown column fillMen in field list2.列名在sql语句中写了2次Column fillMan specified twice3.下面2条 数据库插入对应的列都是int类型的 所插入的数据类型不符合要求时报错Data truncated for column gatheringMoney at row 1Data truncation: Out of range value adjusted for column amount at row 14.Mixing of GROUP columns (MIN(

2、),MAX(),COUNT(),.) with no GROUP columns is illegal if there is no GROUP BY clause5.修改一个表时无法取得同一个表的数据ERROR 1093 (HY000): You cant specify target table context for update in FROMclause6.主键 未自动增长ERROR 1062 :7.int 类型字符过长com.mysql.jdbc.exceptions.MySQLDataException: 2.5026744582E10 in column 1 is outsid

3、e valid range for the datatype INTEGER.8.没找到错误 没影响数据读取java.sql.SQLException: Operation not allowed after ResultSet closed9.类型错误 最常见的是数字类型错误Data truncated for column gatheringMoney at row 110.换另一个项目时 数据库连接池没换 (未解)Name java: is not bound in this Context换了之后 似乎还是不行=java:/comp/env/jdbc/ConnSqlSer 前面多了一个

4、/ 应为java:comp/env/jdbc/ConnSqlSer =11.(未解)java.sql.SQLException: QueryRunner requires a DataSource to be invoked in this way, or a Connection should be passed in12.executeQuery()方法改成execute()(未解)Can not issue data manipulation statements with executeQuery().Can not issue data manipulation statements

5、 with executeQuery().struts错误Failed to obtain specified collection 下拉框没值警告: No FormBeanConfig found under yuanLiaoRuKuForm 配置文件Form出错Cannot find bean: org.apache.struts.taglib.html.BEAN in any scope 标签外面没有嵌套标签No getter method for property: outDate of bean: com.System.storage.form.YuanliaoPandianForm

6、在form里面没有定义 此字段的get方法Cannot get a connection, pool error Timeout waiting for idle object 数据库错误Operation not allowed after ResultSet closed 可能是结果集关闭了/在Action里面调用的DAO类 没有进行重新实例化2008-5-12 20:02:09 org.apache.struts.action.RequestProcessor processException警告: Unhandled Exception thrown: class java.lang.

7、NullPointerException2008-5-12 20:02:09 org.apache.catalina.core.StandardWrapperValve invoke严重: Servlet.service() for servlet action threw exceptionjava.lang.NullPointerExceptionat com.System.storage.action.FinishedAction.finishedCheckAdd(FinishedAction.java:151)at sun.reflect.NativeMethodAccessorImp

8、l.invoke0(Native Method)/在C标签里从一个对象里取值时 , 所请求的是对象里没有的属性An error occurred while evaluating custom action attribute value with value $rows.storageAmount: Unable to find a value for storageAmount in object of class com.System.storage.domain.Finished using operator . (null)forward 转向 连接到了一个还没开始写的action里

9、面 而那个action所对应的jsp页面还没改Resources cannot be null.找不到下面这个action Cannot retrieve mapping for action /finished/finishedChuKuSearchCannot retrieve mapping for action /purveyAdd 如果把jsp页面的action写错了 就这样报/jspfinance/client/ShouKuanJiLu_Sel.jsp(172,0) The end tag /html:form is unbalanced类型转换错误 一般是参数类型写错 在公共方法

10、或者配置文件里面找com.System.finance.client.form.GatheringForm cannot be cast to com.System.finance.client.form.InvoiceFormstruts标签里面 写进了html标签内的属性/jspclient/KeHuDangAn_Ins.jsp(44,88) equal symbol expected/jspfinance/client/TuiHuanHuo_Ins.jsp(70,42) quote symbol expected/jspstorage/material/YuanLiaoChuKu_Ins

11、.jsp(84,31) equal symbol expectedorg.apache.jasper.JasperException: /scDept/dingDanXinZeng.jsp(333,167) equal symbol expectedjsp页面上action写错了Cannot retrieve mapping for action /finished/finishedCheckAdd配置文件出错The content of element type action-mappings must match (action)*.java常见错误以及可能原因集锦2008-07-08 1

12、5:550、 需要标识符 a) 不在函数内 1、 非法表达式开始 b) 可能:丢失括号 . 2. no data found a) 可能:setInt(1,100)中,没有100这个值 3. 找不到符号 a) 可能:没导入包 4. 指定了无效URL a) 可能:数据库名或IP错误,即连接出错 5. 类路径没有找到 a) 可能: ClassNotFoundException: oracle.jdbc.driver.OracleDriver b) 原因: 一般是指包名写错,或者没有import包,或者没有在类路径中找到jar文件 c) 解决: 没有加载Oracle驱动jar,在.bash_prof

13、ile中把ojdbc14.jar加进来 6. 空指针异常 a) 可能: 数据源错误 比如数据库名或IP错误 7. 不能执行查询 a) 可能: 数据库中表的问题,比如列名不存在 8. invalid identity a) 可能: 列名出错 9. 若在数据库中创建了 两个sequence ,运行时出现异常可能是先后执行了多次select语句,导致与原有的序列号产生冲突 10. 表名或列名不存在 a) 可能:表不存在或者没有插入数据到表中 11. 不支持的类,类的版本错误 a) 可能:没有导入jdk5.0,或者编译器仍为1.4 12. MappingNotFoundException a) May

14、be: In the Eclipse Not refersh , or not exist in the dirctory 13. HibernateException: /hibernate.cfg.xml not found a) Maybe1: hibernate.cfg.xml not in the root directory b) Maybe2: Could not parse configuration . c) resolve: database not connect or use another database 14. ConstraintViolationExcepti

15、on a) Maybe: used a not true database 15. 驱动没有找到 或者 JDBC Driver not found 可能:连接数据库的驱动jar包不存在或者版本不一致,比如将旧的版本换成新的会造成该类错误 16. 空指针异常 , java.lang.NullPointerException a) 可能1:数据库连接出错,比如在hibernate.cfg.xml中的数据错误会导致异常。 17. 数据插入异常 ,GenericJDBCException: could not insert a) 可能1:没有建立表或者表中没有任何数据 b) 可能2:插入数据后没有执行

16、提交语句:commit 18. LazyInitializationException 或者延迟加载异常 a) 可能1:没有在查询语句中加fetch 19. IdentifierGenerationException a) 可能1:高位表没有初始化(比如hi_value中没有记录) 20. could not initialize a collection: hibernate.entity.Role.modules#32768 Syntax error: Encountered - at line 1, column 132. a) 错误原因:红色字部分中“-”为非法字符,替换为module

17、_role 21. could not insert collection rows: hibernate.entity.Module.roles#1 在Module.hbm.xml文件的如下配置中加入inverse=”true” 22在部署Struts时,出现如下错误信息: HTTP Status 404 - Servlet action is not available type Status report message Servlet action is not available description The requested resource (Servlet action i

18、s not available) is not available. 问题原因: 1.、web.xml文件中未配置ActionServlet。 2、struts-config.xml文件未配置你要访问的Action。 3、你的jsp文件form标记中action属性的路径名称错误。 4、非以上三种情况。 针对以上4种情况相应的解决方案如下: 1、在web.xml文件中加上ActionServlet的配置信息 ? /WEB-INF/struts-config.xml? ?2、在struts-config.xml文件检查你要访问的Action配置文件。 3、检查jsp文件form标记中action

19、属性的路径名称是否与struts-config.xml文件中action标记的path属性的路径名称一致。 4、非以上情况的解决办法就是检查web容器的log日志,如果时tomcat则检查下logs目录下的localhost_log文件,看里边是否记录有错误信息,然后根据错误信息提示将其纠正。 23java.lang.NoClassDefFoundError: org/apache/commons/beanutils/Converter 缺少spring-framework-2.0.3libjakarta-commonscommons-beanutils.jar 24. ava 代码Cause

20、d by: java.lang.NoClassDefFoundError: org/objectweb/asm/Type 缺少spring-framework-2.0.3libasmasm-2.2.2.jar包,版本不同,该包的名字有相应的区别 java 代码Caused by: java.lang.NoClassDefFoundError: org/dom4j/DocumentException 缺少spring-framework-2.0.3libdom4jdom4j-1.6.1.jar包,版本不同,该包的名字有相应的区别 把这个包进去就可以了:Spring206libdom4j、dom4

21、j-1.6.1.jar java 代码Caused by: java.lang.NoClassDefFoundError: org/apache/commons/collections/SequencedHashMap 缺少spring-framework-2.0.3libjakarta-commonscommons-collections.jar包,版本不同,该包的名字有相应的区别 java 代码Caused by: java.lang.NoClassDefFoundError: net/sf/cglib/proxy/CallbackFilter 缺少spring-framework-2.0

22、.3libcglibcglib-nodep-2.1_3.jar包,版本不同,该包的名字有相应的区别 java 代码Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor 缺少hibernate-3.2libasm.jar包,版本不同,该包的名字有相应的区别 java 代码 org.hibernate.exception.SQLGrammarException: could not load an entity: www.proudsoul.xml.User#1 JAVA工程与WEB工程包的区别:一个是as

23、m.jar,一个是jta.jar java 代码Caused by: java.lang.NoClassDefFoundError: javax/transaction/TransactionManager 缺少spring-framework-2.0.3libj2eejta.jar包,版本不同,该包的名字有相应的区别此种错误请检查相应的*.hbm.xml配置文件的配置 25, Exception in thread main org.springframework.dao.InvalidDataAccessResourceUsageException: could not get next

24、sequence value; nested exception is org.hibernate.exception.SQLGrammarException: could not get next sequence value Caused by: org.hibernate.exception.SQLGrammarException: could not get next sequence value 原因:没有加Sequence或者数据库的方言写错了 26, 我的配置文件 然后我运行保存一条数据进去 The database returned no natively generated

25、identity value 就会报这个错误 因为你native是根据看底层数据库的能力选择identity, sequence 或者hilo中的一个 而我建表的时候id没有指定 alter table student change id id int auto_increment 我们把我们的表的结构小小的改动一下就没问题了 27, UpdateManager无法启动2007-08-09 15:21如果在应用程序安装过程中,暴力中断安装程序,会出现如下状况:1.apt-get remove 和dpkg -remove 无法删除软件 2.UpdateManager无法启动3.新立得软件包管理程

26、序无法启动 以上可能是deb损坏之类造成的 sudo dpkg -r sqldveloper 正在读取软件包列表. 完成 正在分析软件包的依赖关系树. 完成 E: 软件包 sqldeveloper 需要重新安装,但是我无法找到相应的安装文件。 解决方法:1.从 /var/lib/dpkg/status 中把对应的段删掉 重要:修改之前请先备份 在status中找到你对应的包删除就OK了. 28, Exception in thread main java.lang.NoClassDefFoundError: antlr/ANTLRException 少了antlr-2.7.5H3.jar包,从

27、D:eclipseeclipsepluginscom.genuitec.org.hibernate.eclipse_4.1.1myeclipse-data3.0lib 29, Caused by: java.lang.NoClassDefFoundError: javax/transaction/Synchronization 缺少Spring206libj2eejta.jar 30, Caused by: java.lang.IllegalArgumentException: Cannot convert value of type $Proxy3 to required type busi

28、ness.impl.PriceBiz for property priceBiz: no matching editors or conversion strategy found 在java类中设置priceBiz时应该设置的是接口PriceBizIf,而非实现类 31, 数组越界 可能1: 在命令行后面需要加入参数. 可能2:加入的参数错误 32, car is not mapped 可能1: 在cfg.xml中没有增加映射的hbm.xml文件在中 33, 属性没有找到 可能1: hbm.xml文件中的 有问题, 也许是name的值与对应类中的成员名不一致 34,SQLException:

29、 无当前连接 可能1:在比如创建帐户时没有对相应的方法添加到中去,比如这个没有加入:newAccount transfer 35,SQLException: Syntax error: Encountered table at line 1, column 8. 可能1;执行SQL时出现冲突,可能是SQL语句中使用了关键字作为变量来用,比如 update order set balance=1000000; 其中order被用作表名来使用,这是错误的,因为order是个关键字,用在order by中 36, Servlet /Spring-WebMvc threw load() excepti

30、on org.xml.sax.SAXParseException: Document root element beans, must match DOCTYPE root null. jar包的冲突,spring-1.2.6.jar和spring.jar出现在一个war的目录中:J Boss/server/all/deploy/Spring-WebMvc.war/WEB-INF/lib 37, java.sql.SQLException: 当事务仍处于活动状态时,无法关闭连接。 38 , validateJarFile(/home/soft01/Tomcat/webapps/sms-toke

31、n-struts/WEB-INF/lib/servlet-api.jar) Servlet /sms-struts-tiles threw load() exception java.lang.ClassNotFoundException: org.apache.struts.action.ActionServlet 原因:在WEB-INF/lib/ 目录下有servlet-api.jar与/Tomcat/common/lib目录下的servlet-api.jar冲突了,把WEB-INF/lib/下的servlet-api.jar删除就可以了 39,java.lang.ClassNotFoun

32、dException: org.springframework.web.struts.ContextLoaderPlugIn Marking servlet action as unavailable 10:30:47,088 ERROR /NetCT_OSS:3953 - Servlet /NetCT_OSS threw load() exception javax.servlet.UnavailableException 40,org.xml.sax.SAXParseException: Document root element beans, must match DOCTYPE roo

33、t null. 缺少MyEclipse/eclipse/plugins/com.genuitec.eclipse.springframework_5.5.0/data/2.0/dist/modules/spring-struts.jar 41,Caused by: java.sql.BatchUpdateException: ORA-02291: integrity constraint (SD0702.FK82D343CF49A4B831) violated - parent key not found Caused by: org.hibernate.exception.Constrain

34、tViolationException: Could not execute JDBC batch update 有可能是ID生成策略的问题,我将它XML映射文件改成就好了 42, 2007-08-19 16:21:43,290 ERROR org.apache.catalina.core.ContainerBase.Catalina.localhost./OSS.action - Servlet.service() for servlet action threw exception org.hibernate.NonUniqueObjectException: a different ob

35、ject with the same identifier value was already associated with the session: entity.Module#2 java.util.ConcurrentModificationException 原因:已经有对象拥有了所选择的module,用clear(),而不是remove(); 43, ERROR org.apache.catalina.session.ManagerBase - IOException while loading persisted sessions: java.io.InvalidClassExc

36、eption: entity.Module; local class incompatible: stream classdesc serialVersionUID = -5988350031935445758, local class serialVersionUID = -297934247726484429 java.io.InvalidClassException: entity.Module; local class incompatible: stream classdesc serialVersionUID = -5988350031935445758, local class

37、serialVersionUID = -297934247726484429 在Module中加上一个关键字:transient 44, Caused by: java.sql.BatchUpdateException: ORA-02292: integrity constraint (SD0702.SYS_C00132664) violated - child record found 原因:有其他的表引用了该表的外建,所以报这个异常,如果没有引用就不会出现 45, 出现数组越界的时候,看看是不是循环时没有加=,比如: for(int i = 1; iarr.length;i+)可以改成 f

38、or(int i = 1; i=arr.length;i+) 46.如果使用Ant和Junit是被报找不到test,检查一下是否误用了private 出错信息: junit.framework.AssertionFailedError: No tests found in test.AllTest 该错误有个很特别的特点,当你不通过ant来运行测试,而是通过AllTest类来运行的话,可以正常运行。小心哦 47.如果遇到报:表名无效,且jvm报严重错误,看看是不是用了数据库的保留关键字来做表名了,如User。 48.使用ant时必须小心ant的classpath它用的不是IDE的classpa

39、th,小心! 49.小心下边的异常, exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of xp.bean.Users.? type=net.sf.hibernate.PropertyAccessExceptionjava.lang.ClassCastException at xp.bean.UsersMetaClass1.setPropertyValues() at net.sf.hibernate.per

40、sister.AbstractEntityPersister.setPropertyValues 上次出现该错错误的原因是: 源文件里我的class类型为一个类Contact contact 而跑到mapping里却成了Set,呵呵厉害。 50.突然间冒出大量的NullPointException 重新build一下。 51.=Flush during cascade is dangerous - this might occur if an object was deleted and then re-saved by cascade 52.Tapestry的出错信息: Class com.

41、bookshop.Hello does not implement the IPage interface. location: context:/WEB-INF/Home.page, line 6 原因:与显示有关的哪个java类没有从IPage家族继承。 53.使用ant时给出的路径好象不允许出现空格。 54.由于使用ant时用junit做测试的话,classpath中出现j2ee.jar的话,问题多多。例如xml格式的log文件生成不了,莫名其妙的NullPointException等。所以我设置了两个包个包含j2ee.jar,为编译用;一个没有,为junit用 55.进行单元测试时,在

42、查询返回后应马上assertNotNull(),这样可以更快速的定位NullPointException 56.要使用ResourceBundle的话,要千万小心。必须用日志记录下它的状态。还有该属性文件应该放在classes下面。 57.当要显示任何页面时,都被提示无效,那么应该检查一下lib目录了,还有一些很奇怪的异常,例如你明明可以找到一个类但是服务器却提示ClassNotDefException,那么估计是缺少了该类所必须的包了。或者多了不兼容的包,如, xdoclet系列包不被struts的lib目录所兼容 58.编写clone时从Java编程思想(2nd)上学到的(732): .引

43、数传递过程中会自动产生别名(alias)。 .没有局域对象(local objects),只有局域性的(local)references。 .reference受范围(scope)的限制,对象则否。 .对象的寿命从来不是Java的讨论议题(因为有垃圾回收机制) 59.try catch finally的域居然是分离的。 60.jsp乱码的其中一个原因:charset=gb2312 等号=的两边不允许有空格。 61.我的基于Displaytag的简单报表解决方案。 http:/ 下载displaytag.jar和displaytag.tld displaytag.jar放在lib目录,而displaytag.tld放在WEB-INF目录,在web.xml中为displaytag.tld声明一下。 http:/displaytag.org /WEB-INF/displaytag.tld 在jsp里使用前,加上 注意该软件有个bug,他要用的一个包common-lang.jar版本必须在2.0以上。 如果碰到下面异常,则应坚持一下是否该包的版本问题。 java.lang.NoSuchMethodError: mons.lang.StringUtils.capitalize(Ljava/lang/String;)Ljava/lang/String; 然后就可放心使用了 di

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1