程序报错
1、JAVASE
java.io.EOFException
看一下是否有输入流或输出流或者Socket等连接操作完了后没有进行关闭,然后继续对该资源进行操作。如果是经操作完毕的流进行关闭即可。
2、数据库
PLS-00103: 出现符号 ","在需要下列之一时: <an identifier> <a double-quoted delimited-identifier> current
出现这个错误是因为在定义存储过程的参数列表时不需要定义varchar2的长度,定义类型时直接写varchar2即可。
例如:create or replace procedure sel_name(age_in number, name_out out varchar2(10)) as
将其修改为create or replace procedure sel_name(age_in number, name_out out varchar2) as
3、JAVAWEB
4、JDBC
使用JDBC连接数据库,并且操作数据时,运行程序,在控制台输出
testing oracle-character-set-1 against <abc>
PASSED LOSSY
testing oracle-character-set-1 against <ab?c>
PASSED LOSSY
testing oracle-character-set-1 against <XYZ>
PASSED LOSSY
testing oracle-character-set-1 against <longlonglonglong...>
PASSED LOSSY
testing oracle-character-set-31 against <abc>
PASSED LOSSY
testing oracle-character-set-31 against <ab?c>
PASSED LOSSY
testing oracle-character-set-31 against <XYZ>
PASSED LOSSY
testing oracle-character-set-31 against <longlonglonglong...>
PASSED LOSSY
testing oracle-character-set-870 against <abc>
PASSED
testing oracle-character-set-870 against <ab?c>
PASSED
testing oracle-character-set-870 against <XYZ>
PASSED
testing oracle-character-set-870 against <longlonglonglong...>
PASSED
testing oracle-character-set-871 against <abc>
PASSED
testing oracle-character-set-871 against <ab?c>
PASSED
testing oracle-character-set-871 against <XYZ>
PASSED
testing oracle-character-set-871 against <longlonglonglong...>
PASSED
出现这个结果后检查程序发现自己没有写main方法直接运行程序,但是加上main方法后运行结果还是出现这个问题,后来百度才发现,因为我在运行这个程序之前运行过别的程序,而且我是直接点的Myecplise上的运行按钮,这时MyEclipse默认还是执行上一个程序,所有就会出现这种情况,这时在需要运行的程序窗口右键选择Run as即可。
5、Hibernate
Errors in named queries: namedQueryErrors in named queries: namedQuery
看一下名字为namedQuery的注解@NamedQuery,检查他的query属性中的hql语句是否正确,注意,query属性写的是hql语句,因此操作的是持久化类而不是数据库表。
Pure nativescalar queries are not yet supported
找到@NamedNativeQuery看这个注解中是否添加了结果集存放位置,即
resultSetMapping="all_fields",注:all_fields是@SqlResultSetMapping的名字。
6、Struts2
当struts2与JSP的编码方式不同时可能出现乱码
解决方法:修改struts.xml,添加代码<constant name=”sturts.il8n.encoding” value=”编码格式”/>
java.lang.NoSuchMethodException:com.web.action.UserAction3.execute
这是因为Action的默认执行方法是execute方法,找到相应的Action类添加他的execute方法即可。
public String execute(){return success;}
The JSP specification requires that an attribute name is preceded bywhitespace
这是因为相应行中有两个属性中间没有加空格。
解决方案:找到出错的行,然后在相应的位置加上空格。
7、Spring
8、DWR
DWR弹出CSRF Security Error
在web.xml中加入如下代码
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
运行Tomcat时提示Server Tomcat v7.0 Server atlocalhost failed to start.
尝试添加common-logging.jar包
9、技巧
修改JSP默认编码方式
Windows---->Preference---->Web---->JSP Files
使用Ctrl+shift+o可以快速导入所需要的包。
为Eclipse安装插件
方法一:将插件相关的jar文件复制到Eclipse的plugins目录下。
方法二:在Eclipse的links目录(没有就创建)下创建一个jbpm-designer.link的文本文件,其内容为path=Jbpm套件的designer目录地址。
比如:path=D:\share\jbpm-jpdl-3.2.3\designer。