Tomcat6.0.18下出现The requested resource(/struts_login)is not available

Tomcat6.0.18下出现The requested resource(/struts_login)is not available
 
最近学习struts,写了一个很简单的struts小项目首次使用Tomcat6.0测试。

小项目:struts_login
开发环境:windows XP sp3、jdk1.5_15、eclipse3.3、MyEclipse6.0、Tomcat6.0.18、struts1.2.9

出现问题:输入http://localhost:8080/struts_login出现下面的错误提示页面
 

HTTP Status 404 - /struts_login/

type Status report

message /struts_login/

description The requested resource (/struts_login/) is not available.

Apache Tomcat/6.0.18

 
反复查看了仅有的两个类(LoginAction.java和LoginActionForm.java)和配置文件,都没有发现什么错误,后来将该项目部署到Tomcat5.0下却能正常运行,看来源代码并没有错误。从网上搜索解决该问题的办法,后来发现Tomcat6.0.18与Tomcat5.0.25的默认配置有一些不同(至于其他的配置有何不同暂未研研),Tomcat6默认是关闭了目录浏览功能的,这个主要是出于安全性的考虑。
 
对应的配置选项在apache-tomcat-6.0.18/conf/web.xml配置如下:
    <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
 
解决方法:

将其中的
   <init-param>
       <param-name>listings</param-name>
       <param-value>false</param-value>
   </init-param>
设置由false改为true,即可开启目录浏览功能
 
而在Tomcat5.0.25中
对应的配置选项在apache-tomcat-5.0.25/conf/web.xml配置如下:
    <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>
          org.apache.catalina.servlets.DefaultServlet
        </servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
已经开启目录浏览功能

本文解决方法参考自:http://sevenredcity.javaeye.com/blog/194995 
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页