关于web.xml的welcome-file-list 配置与tomcat的关系:

2018年04月18日 10:17:13 守望dfdfdf 阅读数:377 标签: welcome-file-list 更多

个人分类: 工具 软件工作 问题

编辑

版权声明:本文为博主原创文章,转载请注明文章链接。 https://blog.csdn.net/xiaoanzi123/article/details/79985029

先介绍下我的本地:用的tomcat7。web.xml中配置如下:

  1. <welcome-file-list>
  2. <welcome-file>system/index.do</welcome-file>
  3. </welcome-file-list>

系统启动初始化,访问http://localhost:8080/项目名   ,就会访问初始的system/index.do,然后被spring拦截,跳转到controller,在controller中跳转到index.jsp。我本地运行没有问题,index.jsp正常访问到 。注意:index.jsp是放在WEB-INF下的view目录下的。具体参见下图:

现在我把项目部署到开发环境后,访问http://ip/项目名, 一直都是404,这让我很纳闷。由于之前开发环境的tomcat各种配置被更改过,我把server.xml和context.xml全部换成初始状态的xml文件还是不行。但是直接在浏览器地址栏访问项目下的js文件是能够访问到的。说明项目没问题。这时注意到

  1. <welcome-file-list>
  2. <welcome-file>system/index.do</welcome-file>
  3. </welcome-file-list>

于是决定弃用systemController,改为:

  1. <welcome-file-list>
  2. <!-- <welcome-file>system/index.do</welcome-file> -->
  3. <welcome-file>index.jsp</welcome-file>
  4. </welcome-file-list>

由于index.jsp在WEB-INF下的view目录下,而WEB-INF下的资源是受到保护的,不能直接访问,于是把index.jsp移动到webapp目录下。再次访问就可以了。

至于原因,我猜测是tomcat版本的原因。不然不会发生我本地可以访问而开发环境访问不到的问题。我本地tomcat7,开发环境tomcat6。

<!-- 说明:开发环境为tomcat6,项目启动初始访问 http://ip/项目名  返回404,找不到system/index.do。 解决办法:把view目录下的index.jsp移动到webapp目录下,此时项目启动访问首页不用再经过systemcontroller了。直接访问webapp目录下的index.jsp -->

关于这个问题,也查到一些文章,大家表达的意思大致都是一样的,他们都是新建一个同名的空文件解决的,和我的处理方式不同,但都是一个原因。参见这篇为例:https://blog.csdn.net/guoquanyou/article/details/6590141

关于web.xml的welcome-file-list 配置与tomcat的关系:的更多相关文章

  1. Java Web的web.xml文件作用及基本配置(转)

    其实web.xml就是asp.net的web.config一个道理. 说明: 一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的. web.xml文件是用来 ...

  2. 【转载】Java Web的web.xml文件作用及基本配置

    其实web.xml就是asp.net的web.config一个道理. 说明: 一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的. web.xml文件是用来 ...

  3. Tomcat6和7版本对web.xml中taglib标签的配置差异

    原来部署在Tomcat6中的应用在Tomcat7中运行时报错如下错误: java.lang.IllegalArgumentException: taglib definition not consis ...

  4. web.xml的作用及基本配置

    web工程中的web.xml文件有什么作用呢?它是每个web.xml工程都必须的吗? 一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的.那什么时候需要,什 ...

  5. JSP/JSF从web.xml中取出context-param的配置信息

    JSP/JSF从web.xml中取出context-param的配置信息. 应用场景:我们配置了项目的版本信息,想让他显示在页面上,如: <context-param><!-- ## ...

  6. web.xml的加载过程配置详解

      一:web.xml加载过程 简单说一下,web.xml的加载过程.当我们启动一个WEB项目容器时,容器包括(JBoss,Tomcat等).首先会去读取web.xml配置文件里的配置,当这一步骤没有 ...

  7. JavaWeb项目中web.xml有关servlet的基本配置

    JavaWeb项目中web.xml有关servlet的基本配置: 我们注意到,tomcat下的conf中也有一个web.xml文件,没错的,所有的JavaWeb项目中web.xml都继承自服务器下的w ...

  8. 第7章—SpringMVC高级技术—不用web.xml,而使用java类配置SpringMVC

    不用web.xml,而使用java类配置SpringMVC DispatcherServlet是Spring MVC的核心,按照传统方式, 需要把它配置到web.xml中. 我个人比较不喜欢XML配置 ...

  9. web.xml里welcome-file欢迎页面配置及web.xml简介

    web项目欢迎页面的配置 <welcome-file-list> <welcome-file>/WEB-INF/index.html</welcome-file> ...

随机推荐

  1. loj #2025. 「JLOI / SHOI2016」方

    #2025. 「JLOI / SHOI2016」方   题目描述 上帝说,不要圆,要方,于是便有了这道题. 由于我们应该方,而且最好能够尽量方,所以上帝派我们来找正方形.上帝把我们派到了一个有 NNN ...

  2. 洛谷P3604 美好的每一天(莫队)

    传送门 由乃的题还是一如既往的可怕…… 先放上原题解 标解: 一个区间可以重排成为回文串,即区间中最多有一个字母出现奇数次,其他的都出现偶数次 发现这个和  类似 这样如果一个区间的  和为  或者  ...

  3. Kibana error " Fielddata is disabled on text fields by default. Set fielddata=true on [publisher] ..."

    Reason of this error:Fielddata can consume a lot of heap space, especially when loading high cardina ...

  4. Gym - 101845K 排序+概率

    The UNAL programming coaches have lost a bet, they bet the 6 UNAL teams would occupy the first six p ...

  5. 在Mvc中,ExpandoObjec类的使用

    创建一个基本mvc项目 1.向Models目录下添加一个类文件MyModel.cs文件,代码如下: using System; using System.Collections.Generic; us ...

  6. Ubuntu server 修改系统时区

    执行命令: sudo dpkg-reconfigure tzdata

  7. BZOJ 3083 遥远的国度 树链剖分+脑子

    唉..又调了半天QWQ..为何读入挂了.....莫非读入是反着的????据ywy学长所言如是...OvO震惊 这啥骚题啊...还要换根...不过清明讲过...(然鹅我现在才做... 先随便选个点(比如 ...

  8. Tomcat-猫

    第1章 Tomcat简介 Tomcat  是一个web服务器 ,类似nginx,apache的http Nginx  http 只能处理html等静态文件jpg() 网页分为静态网页(以.html 或 ...

  9. inode与block知识总结

    inode概述:硬盘要分区,然后格式化,创建文件系统在每个Linux存储设备的分区被格式化为ext3文件系统后一般有两个部分:    第一部分Inode:存储这些数据的属性信息(大小,属主,归属的用户 ...

  10. Vue 中怎么发起请求(二)

    fetch 是新一代XMLHttpRequest的一种替代方案.无需安装其他库.可以在浏览器中直接提供其提供的api轻松与后台进行数据交互. 基本用法: 1 fetch(url,{parmas}).t ...