事情是这样:
突然在showall的servlet报错,打开就是500,只有一句能看懂“Allocate exception for servlet ShowWaitServlet”
思考:应是配置文件,加载驱动这方面的问题
查找:web.xml,项目文件及其映射等,发现ShowWaitServlet没有生成class文件
无用的解决:把filter去掉了,怕filter拦截我servlet。。。。的修改???
错误地解决:根据网友的说法,class文件不生成要生动生成,即Project -> Build Automatically关掉,再project -> clean,清除项目的class文件,再运行编译一次。
解决的结果:1.classes文件夹里空了,再运行也编译不出来。2.所有文件运行就500。 3.本来应该报错的文件突然都不报错了 4.历史记录和垃圾箱里都没有clean掉的class文件,无法找回
求助:在同学电脑上编译出了classes文件,据说是一运行就有了,于是打包发给我安上了。
求助的结果:1.所有文件运行无误。2.servlet仍无法修改classes,即不能重新编译,依然跑旧代码(也查了外来包没有勾选只读)
最后成功解决:经全面排查,发现某个附加功能的jar包早些时候添加到了library里,后来误移动了,导致项目找不到jar包,无法编译。
主观原因分析:那一时段主要在写ajax和jsp,邮件类有个地方卡住了,然后动了jar包,测试了下单个类没有接着测servlet,就去做别的了。后来以为是前期传值出了问题没有考虑jar包。以后出了bug要好好回忆排查到底是哪个阶段出了问题。。。
历时4个小时,完结。
大难不死必有后福hhh