Windows 10 环境下,MyEclipse 10, JDK 1.7 32位,Tomcat 6 32位,Oracle版本:oracle 11g r2。
1. 严重: StandardServer.await: create[8005]
原因:端口号冲突
解决:
(1)方法一
使用命令netstat -ano找到占据端口8005的进程号,再用命令taskkill /pid xxxx杀死对应进程xxxx。
(2)方法二
打开任务管理器,看看开发工具eclipse下是否启动了两个相同进程,直接结束进程,重启eclipse和项目。
(3)方法三
修改Tomcat配置文件server.xml中的端口号。
修改8080端口为其它端口号。
注意事项:这个错误与eclipse和操作系统位数没关系。
2. Can’t load AMD 64-bit .dll on a IA 32-bit’ platform
原因:Tomcat 和 JDK 的位数不一致。
解决:使得Tomcat 和 JDK 位数相同。
3. Tomcat加载项目时,进度条一直显示launching delegate…停留在27%
原因:未明。
解决:重启MyEclipse,然后重新运行项目。
4. Cause: java.sql.SQLException: OALL8 处于不一致状态
原因:未明。
解决:将jar包换成ojdbc14 10.2.0.5.0,然后重新运行项目。
5.java.lang.UnsatisfiedLinkError: Can not load library …
原因:对应的DLL文件没有加载到tomcat中。
解决:手动将项目中的DDL文件复制到对应的tomcat目录下。
6.Error starting endpoint
原因:Tomcat端口和其它进程端口冲突。
解决:杀死其它进程。
7. Error querying database. Cause: java.sql.SQLException: ORA-01722: 无效数字
原因——本质原因是入参和数据库表字段数据类型不匹配,报错可能存在以下两种情况:
(1)可能一:入参数据类型不对(即查询条件、sql语句有问题),数据库表字段是number类型而入参包含了字符。
(2)可能二:sql语句没问题。例如:
oracle数据库的 sql 语句中=是用数字比较的,因此 oracle 会自动把字符串类型转换成数字进行比较。然而,已有数据是varchar等字符串类型,表记录对应的字段中现存数据既有数字也有字符,导致比较双方数据类型无法匹配。
领取专属 10元无门槛券
私享最新 技术干货