【技术】解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了

解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了

  • 一次性解决Maven项目web.xml版本过低的问题

Tom: Peter,你看我在Controller里面通过ModelAndView向前台传值,页面使用EL表达式怎么接收不到呀,而且页面直接把我的EL表达式直接输出了,好像没有解析一样。
Peter: 我帮你看看。。。。
Peter: Controller封装数据没有问题;页面跳转也没有问题;JSP页面也删掉重新创建了,也没有问题;这些都排除了。那是哪儿的问题?再看一下web.xml的头信息吧。哎,你的web.xml的头信息怎么是2.3的版本?


DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>

web-app>

Tom: 这个倒没注意,是Maven自动生成的。
Peter: 把头信息改一下试试,改成较新的版本。重启一下tomcat试一下,果然好了。以后遇到这个问题,修改一下头信息就行了。


<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
web-app>

Tom: 明白了。还有个问题,以后创建Maven项目是不是每次都需要改,好麻烦呀,有没有一次性解决的方案?
Peter: 有,不要眨眼睛,注意看!


一次性解决Maven项目web.xml版本过低的问题

首先得明白Maven工具也是java写的,使用也是需要依赖jar包的,所以我们得找到Maven工具所依赖的jar包。找哪个包呢?我们在创建web项目的时候选择的是“maven-srchetype-webapp”这个选项。web.xml这个文件也是从这个地方中拷贝出来的。所以我们需要去本地仓库找到这个jar,修改里面的web.xml即可
【技术】解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了_第1张图片
1、找到本地仓库中的【maven-archetype-webapp】目录,可以参照下图:
【技术】解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了_第2张图片
2、打开【1.4】这个目录,如果没有的就打开最新的版本。可以看到【maven-archetype-webapp-1.4.jar】文件
【技术】解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了_第3张图片
3、使用压缩包打开【maven-archetype-webapp-1.4.jar】文件,找到web.xml,右键使用记事本打开。
目录:maven-archetype-webapp-1.4.jar\archetype-resources\src\main\webapp\WEB-INF\web.xml【技术】解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了_第4张图片
4、将里面的头信息替换为新版本的即可。
【技术】解决Maven创建web工程web.xml版本过低的问题,妈妈再也不用的担心我的学习了_第5张图片


<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
web-app>

5、保存之后,压缩软件会提醒:压缩包中的文件已经被修改,是否重新压缩,点击确定重新压缩即可。
以上就永久修改了web.xml了,以后再用Maven创建项目的时候就不用再担心web.xml版本的问题了。同样index.jsp也可以按照同样的方式修改。(maven-archetype-webapp-1.4.jar\archetype-resources\src\main\webapp\index.jsp)

学会了吗?

你可能感兴趣的:(Spring,maven,xml,tomcat)