Java web.xml 配置技巧—动态欢迎页地址--欺骗tomcat

我们的Java Web项目在配置web.xml 欢迎页地址默认是index.htmlindex.jsp ,不知道有人注意过没有,如果我要配置成/index/user.action  或者 /userList.do 什么的怎么办呢?你可能觉得直接配置就OK了,我告诉你不行。如果可以,你可以忽略本方法。下面讲讲如果不能配置动态地址,怎么办。

配置如下:

  1. <welcome-file-list>
  2. <welcome-file>/user/index.shtml</welcome-file>
  3. </welcome-file-list>

我这里是*.shtml ,就是对应的*.do  or *.action

结果:访问404。

解决办法:

webapp 下建一个文件夹,然后再建一个文件,FileName 为 index.shtml 即可。

下面说说原理:

图解释:

我的SpringMVC  web.xml 配置.

  1. <servlet>
  2. <description>spring mvc servlet</description>
  3. <servlet-name>springMvc</servlet-name>
  4. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  5. <init-param>
  6. <description>spring mvc 配置文件</description>
  7. <param-name>contextConfigLocation</param-name>
  8. <param-value>classpath:spring-mvc.xml</param-value>
  9. </init-param>
  10. <load-on-startup>1</load-on-startup>
  11. </servlet>

也就是当Tomcat知道有这个静态页存在,所以去请求的时候,被SpringMVC   mvc servlet 拦截了。转向动态请求了。

原文地址:https://www.cnblogs.com/wxseng/p/11828240.html

时间: 2024-08-29 10:09:22

Java web.xml 配置技巧—动态欢迎页地址--欺骗tomcat的相关文章

java web.xml配置详解

1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文. 3.容器将<context-param>转换为键值对,并交给servletContext. 4.容器创建<listener>中的类实例,创建监听器. 二  Load-on-startup Load

java web.xml配置servlet

文件名:“SimpleServlet.java” package cn.mldn.lxh.servlet;//定义包 import java.io.*; //HttpServlet属于javax.servlet.http包下 //ServletException属于javax.servlet包下 import javax.servlet.*;//导入HttpServlet所属的包 //HttpServletRequest.HttpServletResponse存放在javax.servlet.h

Java web.xml 配置详解

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 Servlet

log4j和web.xml配置webAppRootKey 的问题(一个tomcat下部署多个应用)

转自:http://blog.csdn.net/arvin_qx/article/details/6829873 在tomcat下部署两个或多个项目时,web.xml文件中最好定义webAppRootKey参数,如果不定义,将会缺省为“webapp.root”,如下: <!-- 应用路径 --> <context-param> <param-name>webAppRootKey</param-name> <param-value>webapp.r

Spring MVC的web.xml配置详解(转)

出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name) 2.在web.xml配置监听器ContextLoaderListener(listener-class) ContextLoaderListener的作用就是启动Web容器时,自动装配ApplicationContext的配置信息.因为它实现了ServletContextListener这个接口,在web.

java web.xml listener servlet 和filter的加载顺序

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter. 最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 Servle

maven工程web层的web.xml配置文档内容

下面是web层,web.xml配置文档里面需要配置的东西: 1.lo4j配置 2.读取spring文件配置 3.设计路径变量值 4.spring字符集过滤器 5.登陆过滤器 6.springMVC核心配置 7.session过期时间 8.错误页面跳转 以下是实例: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSch

基于注解的Spring MVC(所需jar包,web.xml配置,Spring文件配置,@Controller,@RequestMapping,@RequestParam,model填參,EL取值)

1.加入jar 2.web.xml配置: <?xml version="1.0" encoding="UTF-8"? > <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocati

SSH框架 web.xml配置

<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.s