[转载]程序开发常见错误
(2011-06-19 14:28:13)
标签:
转载
谢谢
servlet.init()for servlet,项目中遇到的错误
sql错误
找不到列
Unknown column 'fillMen' in 'field list'
2.列名在sql语句中写了2次
Column 'fillMan' specified
servlet版本。twice
3.下面2条 数据库插入对应的列都是int类型的 所插入的数据类型不符合要求时报错
Data truncated for column 'gatheringMoney' at row 1
Data truncation: Out of range value adjusted for column 'amount' at
row 1
4.
java无法找到要运行的ant文件。Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP
columns is illegal if there is no GROUP BY clause
5.修改一个表时无法取得同一个表的数据
ERROR 1093 (HY000): You can't specify target table 'context' for
update in FROM
clause
unable to start servletwebserver,6.主键 未自动增长
ERROR 1062 :
7.int 类型字符过长
com.mysql.jdbc.exceptions.MySQLDataException: '2.5026744582E10' in
column '1' is outside valid range for the datatype INTEGER.
8.没找到错误 没影响数据读取
eclipse无法找到ant文件、java.sql.SQLException: Operation not allowed after ResultSet
closed
9.类型错误 最常见的是数字类型错误
Data truncated for column 'gatheringMoney' at row 1
10.换另一个项目时 数据库连接池没换 (未解)
Name java: is not bound in this Context
servlet3.0异步处理?换了之后 似乎还是不行
=====
java:/comp/env/jdbc/ConnSqlSer
前面多了一个'/'
应为java:comp/env/jdbc/ConnSqlSer
=======
apache ant?11.(未解)
java.sql.SQLException: QueryRunner requires a DataSource to be
invoked in this way, or a Connection should be passed in
12.executeQuery()方法改成execute()(未解)
Can not issue data manipulation statements with
executeQuery().
servlet报错。Can not issue data manipulation statements 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"
在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.NullPointerException
2008-5-12 20:02:09 org.apache.catalina.core.StandardWrapperValve
invoke
严重: Servlet.service() for servlet action threw exception
java.lang.NullPointerException
at
com.System.storage.action.FinishedAction.finishedCheckAdd(FinishedAction.java:151)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
//在C标签里从一个对象里取值时 , 所请求的是对象里没有的属性
An error occurred while uating 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里面 而那个action所对应的jsp页面还没改
Resources cannot be null.
找不到下面这个action
Cannot retrieve mapping for action
/finished/finishedChuKuSearch
Cannot retrieve mapping for action /purveyAdd 如果把jsp页面的action写错了
就这样报
/jspfinance/client/ShouKuanJiLu_Sel.jsp(172,0) The end tag
"
类型转换错误 一般是参数类型写错 在公共方法或者配置文件里面找
com.System.finance.client.form.GatheringForm cannot be cast to
com.System.finance.client.form.InvoiceForm
struts标签里面 写进了html标签内的属性
/jspclient/KeHuDangAn_Ins.jsp(44,88) equal symbol expected
/jspfinance/client/TuiHuanHuo_Ins.jsp(70,42) quote symbol
expected
/jspstorage/material/YuanLiaoChuKu_Ins.jsp(84,31) equal symbol
expected
org.apache.jasper.JasperException:
/scDept/dingDanXinZeng.jsp(333,167) equal symbol expected
jsp页面上action写错了
Cannot retrieve mapping for action /finished/finishedCheckAdd
配置文件出错
The content of element type "action-mappings" must match
"(action)*".
java常见错误以及可能原因集锦
2008-07-08 15: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_profile中把ojdbc14.jar加进来
6. 空指针异常
a) 可能: 数据源错误 比如数据库名或IP错误
7. 不能执行查询
a) 可能: 数据库中表的问题,比如列名不存在
8. invalid identity
a) 可能: 列名出错
9. 若在数据库中创建了 两个sequence
,运行时出现异常可能是先后执行了多次select语句,导致与原有的序列号产生冲突
10. 表名或列名不存在
a) 可能:表不存在或者没有插入数据到表中
11. 不支持的类,类的版本错误
a) 可能:没有导入jdk5.0,或者编译器仍为1.4
12. MappingNotFoundExceptiona) Maybe: 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. ConstraintViolationException
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:插入数据后没有执行提交语句: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) 错误原因:>
table="module-role"
lazy="false">红色字部分中“-”为非法字符,替换为module_role
21. could not insert collection rows:
[hibernate.entity.Module.roles#1]
在Module.hbm.xml文件的如下配置中加入inverse=”true”
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 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.java.lang.NoClassDefFoundError:
org/apache/commons/beanutils/Converter
缺少spring-framework-2.0.3libjakarta-commonscommons-beanutils.jar
24.
ava 代码Caused 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、dom4j-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.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工程包的区别:一个是asm.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 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 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 需要重新安装,但是我无法找到相应的安装文件。
解决方法:1.从 /var/lib/dpkg/status 中把对应的段删掉
重要:修改之前请先备份
在status中找到你对应的包删除就OK了...
28,
Exception in thread "main" java.lang.NoClassDefFoundError:
antlr/ANTLRException
少了antlr-2.7.5H3.jar包,从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 [business.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: 无当前连接
可能1:在比如创建帐户时没有对相应的方法添加到中去,比如这个没有加入:newAccount
class="org.springframework.aop.support.NameMatchMethodPointcutAdvisor">
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() exception
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-token-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.ClassNotFoundException:
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 root "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.ConstraintViolationException:
Could not execute JDBC batch update
有可能是ID生成策略的问题,我将它XML映射文件改成
class="increment" />就好了
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 object 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.InvalidClassException:
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 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; i
for(int i = 1;
i><=arr.length;i++)
46.如果使用Ant和Junit是被报找不到test,检查一下是否误用了private
出错信息:
type="junit.framework.AssertionFailedError">junit.framework.AssertionFailedError:
No tests found in test.AllTest
该错误有个很特别的特点,当你不通过ant来运行测试,而是通过AllTest类来运行的话,可以正常运行。小心哦
47.如果遇到报:表名无效,且jvm报严重错误,看看是不是用了数据库的保留关键字来做表名了,如User。
48.使用ant时必须小心ant的classpath它用的不是IDE的classpath,小心!
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.PropertyAccessException">java.lang.ClassCastException
at
xp.bean.UsersMetaClass1.setPropertyValues()
at
net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues
上次出现该错错误的原因是:
源文件里我的class类型为一个类Contact contact
而跑到mapping里却成了Set,呵呵厉害。
分享:
喜欢
0
赠金笔
加载中,请稍候......
评论加载中,请稍候...
发评论
登录名: 密码: 找回密码 注册记住登录状态
昵 称:
发评论
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态