在部署Struts时,出现如下错误信息:
HTTP Status 404 - Servlet action is not available
type Status report
message Servlet action is not available
description The requested resource (Servlet action is not available) is not available.
问题原因:
1.、web.xml文件中未配置ActionServlet。
2、struts-config.xml文件未配置你要访问的Action。
3、你的jsp文件form标记中action属性的路径名称错误。
4、非以上三种情况。
针对以上4种情况相应的解决方案如下:
1、在web.xml文件中加上ActionServlet的配置信息
action
org.apache.struts.action.ActionServlet
config
/WEB-INF/struts-config.xml
debug
0
detail
0
2、在struts-config.xml文件检查你要访问的Action配置文件。
3、检查jsp文件form标记中action属性的路径名称是否与struts-config.xml文件中action标记的path属性的路径名称一致。
4、非以上情况的解决办法就是检查web容器的log日志,如果时tomcat则检查下logs目录下的localhost_log文件,看里边是否记录有错误信息,然后根据错误信息提示将其纠正。
注意:以上为常规解决方案,我遇到的问题却比较奇怪。看了tomcat启动时的输出信息发现有两项错误。一项是,数据库连接错误。这个容易理解,我的确还没开My SQL数据库。另一项是, servlet启动错误。自觉应该是这个的问题,首先开启My SQL,然后重开tomcat发现连第二 个错误也没有了。试着重新连接网页,成功!问题解决了,但深层的原因还是有待解决。
希望大家指点