HTTP Status 500 - Dispatch[/pubManage] to method create returned an exception
今天在修改论文统计系统(Struts+Hibernate)的时候产生了一个莫名其妙的问题,错误提示如下:
HTTP Status 500 - Dispatch[/pubManage] to method create returned an
exception
--------------------------------------------------------------------------------
type Status report
message Dispatch[/pubManage] to method create returned an exception
description The server encountered an internal error
(Dispatch[/pubManage] to method create returned an exception) that
prevented it from fulfilling this request.
从提示错误来看,几乎无有用信息。经过一个小时反复查找终于找到了错误,原来是由于JDK版本产生的问题。
这个系统开发的时候是用的JDK1.4,而我搭建的环境是JDK1.5,在本机修改的时候犯了一个很隐蔽的错误。
错误代码如下:
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
![](http://images.csdn.net/syntaxhighlighting/OutliningIndicators/None.gif)
由于eclipse的自动完成功能,把pubName中的单引号过滤掉,很自然的就写成了上面的代码。
在JDK1.5中才有replace(String,String),而JDK1.4中并没有,只有replace(char,char);
所以正确的代码就是把双引号改为单引号。这样就不会出错了。
我很奇怪我在eclipse的项目选项中明明设置了编译器为JDK1.4,怎么写了JDK1.5中才有的函数竟然能通过编译。晕啊,害得我被这莫名其妙的错误搞了半天。
修改别人的老项目好痛苦啊!!!