[摘要]Servlet常见错误校验表:________________________________________________________________故障现象 可能的原因__________________________________________________...
Servlet常见错误校验表:
________________________________________________________________
故障现象 可能的原因
________________________________________________________________
servlet不能编译 除了通常的java语言错误以外,还有一些跟servlet有关的原因:
1 没有导入javax.servlet.*或javax.servlet.http.*;
2 类没有实现子类servlet或者它的一个子类;
3 servlet.jar没有在类路径中设置
________________________________________________________________
没有加载servlet 这可能有多种原因:
1 使用了错误的url(如,没有指定/servlet);
2 大小写错;
3 类没有在servlet引擎的servlet路径中;
4 有关的类没有在servlet引擎的类路径中;
5 servlet在初始化过程中失败
6 servlet引擎没有处于运行状态;
7 web服务器没有处于运行状态
_______________________________________________________________
空的参数值 查看getParameteter()是否使用了一个带多个值的参数
_______________________________________________________________
空指针异常 这可能表明这样的失败:在从会话提取值以前创建会话失败
_______________________________________________________________
初始参数的错误取值 确认参数名称拼写得是否跟程序中的和servlet属性中的完全一样
(注意大小写)
________________________________________________________________
空的初始化参数 init()方法没有调用super.init(config)
________________________________________________________________
Servlet引擎在关闭时挂起 destroy()方法没有调用super.destroy();
________________________________________________________________
错误的MIME类型 确保在写入到响应流以前是否调用了setContentType();
________________________________________________________________
被破坏的数据值 确认在非同步化的方法中是否使用实例变量。
记住:除非显示地实现SingleThreadMode,否则
servlet的单个实例就可以被 多个线程运行,如果是这样的话,
任何实例变量都是由所有线程共享的。
……