java常见错误以及可能原因集锦0、需要标识符a) 不在函数内1、非法表达式开始b) 可能:丢失括号 .2. no data founda) 可能:setInt(1,100)中,没有100这个值3. 找不到符号a) 可能:没导入包4. 指定了无效URLa) 可能:数据库名或IP错误,即连接出错5. 类路径没有找到a) 可能: ClassNotFoundException: oracle.jdbc.driver.OracleDriverb) 原因: 一般是指包名写错,或者没有import包,或者没有在类路径中找到jar文件c) 解决: 没有加载Oracle驱动jar,在.bash_profile中把ojdbc14.jar加进来6. 空指针异常a) 可能: 数据源错误比如数据库名或IP错误7. 不能执行查询a) 可能: 数据库中表的问题,比如列名不存在8. invalid identitya) 可能: 列名出错9. 若在数据库中创建了两个sequence ,运行时出现异常可能是先后执行了多次select 语句,导致与原有的序列号产生冲突10. 表名或列名不存在a) 可能:表不存在或者没有插入数据到表中11. 不支持的类,类的版本错误a) 可能:没有导入jdk5.0,或者编译器仍为1.412. MappingNotFoundExceptiona) Maybe: In the Eclipse Not refersh , or not exist in the dirctory13. HibernateException: /hibernate.cfg.xml not founda) Maybe1: hibernate.cfg.xml not in the root directoryb) Maybe2: Could not parse configuration .c) resolve: database not connect or use another database14. ConstraintViolationExceptiona) Maybe: used a not true database15. 驱动没有找到或者 JDBC Driver not found可能:连接数据库的驱动jar包不存在或者版本不一致,比如将旧的版本换成新的会造成该类错误16. 空指针异常, ng.NullPointerExceptiona) 可能1:数据库连接出错,比如在hibernate.cfg.xml中的数据错误会导致异常。
17. 数据插入异常,GenericJDBCException: could not inserta) 可能1:没有建立表或者表中没有任何数据b) 可能2:插入数据后没有执行提交语句:commit18. LazyInitializationException 或者延迟加载异常a) 可能1:没有在查询语句中加fetch19. IdentifierGenerationExceptiona) 可能1:高位表没有初始化(比如hi_value中没有记录)20. could not initialize a collection: [hibernate.entity.Role.modules#32768] Syntax error: Encountered "-" at line 1, column 132.a) 错误原因:<set name="modules" table="module-role" lazy="false">红色字部分中“-”为非法字符,替换为module_role21. could not insert collection rows: [hibernate.entity.Module.roles#1]在Module.hbm.xml文件的如下配置中加入inverse=”true”<set name="roles" table="module_role" inverse="true">22.在部署Struts时,出现如下错误信息:HTTP Status 404 - Servlet action is not availabletype Status reportmessage Servlet action is not availabledescription The requested resource (Servlet action is 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属性的路径名称是否与struts-config.xml文件中action标记的path属性的路径名称一致。
4、非以上情况的解决办法就是检查web容器的log日志,如果时tomcat则检查下logs 目录下的localhost_log文件,看里边是否记录有错误信息,然后根据错误信息提示将其纠正。
23.ng.NoClassDefFoundError: org/apache/commons/beanutils/Converter 缺少spring-framework-2.0.3\lib\jakarta-commons\commons-beanutils.jar24. java 代码Caused by: ng.NoClassDefFoundError:org/objectweb/asm/Type缺少spring-framework-2.0.3\lib\asm\asm-2.2.2.jar包,版本不同,该包的名字有相应的区别java 代码Caused by: ng.NoClassDefFoundError:org/dom4j/DocumentException缺少spring-framework-2.0.3\lib\dom4j\dom4j-1.6.1.jar包,版本不同,该包的名字有相应的区别把这个包进去就可以了:\Spring206\lib\dom4j、dom4j-1.6.1.jarjava 代码Caused by: ng.NoClassDefFoundError:org/apache/commons/collections/SequencedHashMap缺少spring-framework-2.0.3\lib\jakarta-commons\commons-collections.jar包,版本不同,该包的名字有相应的区别java 代码Caused by: ng.NoClassDefFoundError:net/sf/cglib/proxy/CallbackFilter缺少spring-framework-2.0.3\lib\cglib\cglib-nodep-2.1_3.jar包,版本不同,该包的名字有相应的区别java 代码Caused by: ng.NoClassDefFoundError:org/objectweb/asm/CodeVisitor缺少hibernate-3.2\lib\asm.jar包,版本不同,该包的名字有相应的区别java 代码org.hibernate.exception.SQLGrammarException: could not load an entity: [er#1]JAVA工程与WEB工程包的区别:一个是asm.jar,一个是jta.jarjava 代码Caused by: ng.NoClassDefFoundError:javax/transaction/TransactionManager缺少spring-framework-2.0.3\lib\j2ee\jta.jar包,版本不同,该包的名字有相应的区别此种错误请检查相应的***.hbm.xml配置文件的配置25, Exception in thread "main"org.springframework.dao.InvalidDataAccessResourceUsageException:could notget next sequence value; nested exception isorg.hibernate.exception.SQLGrammarException: could not get next sequence value Caused by: org.hibernate.exception.SQLGrammarException: could not get next sequence value原因:没有加Sequence或者数据库的方言写错了26,我的配置文件<id name="id" column="id"><generator class="native" /></id>然后我运行保存一条数据进去The database returned no natively generated 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.新立得软件包管理程序无法启动以上可能是deb损坏之类造成的sudo dpkg -r sqldveloper正在读取软件包列表... 完成正在分析软件包的依赖关系树... 完成E: 软件包 sqldeveloper 需要重新安装,但是我无法找到相应的安装文件。