上一章写到pom.xml有一个报错,说找不到web.xml文件。确实是这样的,因为我们用maven搭建的web层里就是没有这个文件。我们能看到,webapp文件夹里是空的。

没有,就想办法把它弄出来。

一、右键项目>>>>Java EE Tools>>>>Generate Deployment Descriptor Stub

  

  然后就出来了。

  参考:https://www.cnblogs.com/pjlhf/p/8782651.html

二、在webapp目录下新建一个index.jsp

  1、根据默认的路径,就是要在这里建一个,才能读取到。

  2、会发现一个bug

    Multiple annotations found at this line:
    - The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

  3、这个时候去Java Build Path 里面配置Server Runtime 为Tomcat 也可以解决问题,但是……

    我们回想上一章,父项目的pom.xml 里已经配置了Servlet。

    找了一下,发现这个是在dependencyManagement节点里的。

    要用的话,就需要在子项目中的pom.xml再写一遍。

    或者在dependencyManagement外面的那个dependencies再写一遍。

  

  4、这个时候就能运行成功了。


  但我还是想笑一下/捂脸,说好是ssh项目的搭建嘛,到时候肯定用的struts2啊,servlet就不需要了,以上操作就白废了。

  

三、配置web.xml

  阿豪聊干货:

  https://www.cnblogs.com/hafiz/p/5715523.html

  下面的东西先配着,下一章再配SSH

  1、配Spring初始化参数

     <context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:applicationContext.xml
</param-value>
</context-param>

  2、配openSessionInView

     <filter>
<filter-name>openSessionInView</filter-name>
<filter-class>common.toolkit.java.orm.hibernate.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>openSessionInView</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

  3、配Struts2

 1     <filter>
2 <filter-name>struts2</filter-name>
3 <filter-class>com.wisdombud.jrj.actions.filter.MyStrutsFilter
4 </filter-class>
5 </filter>
6 <filter-mapping>
7 <filter-name>struts2</filter-name>
8 <url-pattern>/*</url-pattern>
9 <dispatcher>REQUEST</dispatcher>
10 <dispatcher>FORWARD</dispatcher>
11 <dispatcher>INCLUDE</dispatcher>
12 </filter-mapping>

  4、配监听

     <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>

  5、配session时长(30分钟)

     <session-config>
<session-timeout>30</session-timeout>
</session-config>

  6、配置错误页面

     <error-page>
<exception-type>java.lang.Throwable</exception-type>
<location>/500.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>

  

  当然,前面明明是可以跑起来的,配完这些就跑不起来了,那是因为这里配了很多文件,但是这些文件都是找不到的,我们还没配嘛。

  下一章,配SSH整合。

SSH项目搭建(五)——web.xml文件配置的更多相关文章

  1. springmvc 项目完整示例07 设置配置整合springmvc springmvc所需jar包springmvc web.xml文件配置

    前面主要是后台代码,spring以及mybatis的整合 下面主要是springmvc用来处理请求转发,展现层的处理 之前所有做到的,完成了后台,业务层和持久层的开发完成了 接下来就是展现层了 有很多 ...

  2. web.xml 文件配置01

    web.xml 文件配置01   前言:一般的web工程中都会用到web.xml,方便开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web. ...

  3. Spring整合Hibernate的XML文件配置,以及web.xml文件配置

    利用Spring整合Hibernate时的XML文件配置 applicationContext.xml <?xml version="1.0" encoding=" ...

  4. SSH web.xml文件配置

    启动一个WEB项目的时候, WEB容器会去读取它的配置文件web.xml web.xml中配置的加载优先级:context-param -> listener -> filter -> ...

  5. Struts2 web.xml文件配置

    在导入了项目需要使用的核心jar包之后需要在web.xml中配置Struts. 1. Struts2的知识点普及: Struts2共有5类配置文件,分别罗列如下: 1), Web.xml; 在没有使用 ...

  6. web.xml文件配置详解以及实例说明

    1.web.xml学名叫部署描述符文件,是在Servlet规范中定义的,是web应用的配置文件. 2.部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出 ...

  7. spring mvc学习笔记(一)web.xml文件配置的一点重要信息

    通过这个web.xml文件可以看出,所有的*.shtml的请求,都会被springmvc这个servlet处理.这里如果没有指定contextConfigLocation这个参数,将会按照默认规则在c ...

  8. web.xml文件配置模板

    直接贴完整代码,当然,spring的核心控制器依赖包需要通过mean提前配置 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.// ...

  9. web项目直接在浏览器上访问不需要带.jsp,直接ip地址加项目名 在web.xml里配置

    web.xml最上方 <welcome-file-list> <welcome-file> /view/login.jsp </welcome-file> < ...

随机推荐

  1. -bash: brew: command not found

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" ...

  2. 《剑指offer》第三十六题(二叉搜索树与双向链表)

    // 面试题36:二叉搜索树与双向链表 // 题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求 // 不能创建任何新的结点,只能调整树中结点指针的指向. #include < ...

  3. 《剑指offer》第二十四题(反转链表)

    // 面试题24:反转链表 // 题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的 // 头结点. #include <iostream> #include &quo ...

  4. c++ primer plus 第七章 课后题答案

    #include <iostream> using namespace std; double HAR_AVG(double, double); void TEST(bool); int ...

  5. 关于QT的QPainterPath::arcTo 详解

    这个函数文档的意思就是画弧,看了文档也不太明白,自己做了demo终于明白了意思 移动到圆心,画180度半圆 void TestArcTo::paintEvent(QPaintEvent *) { QP ...

  6. Codefores 835C-Star sky

    835C-Star sky 思路:dp,预处理一下c+1层前缀和. 代码: #include<bits/stdc++.h> using namespace std; #define ll ...

  7. <yii 框架学习> yii 框架改为中文提示

    工作需要用到yii框架,但发现yii框架自带的提示都是英文的.上网找资料才发现其实可以自己陪置 . 将项目protected/config/main.php里的app配置加上language=> ...

  8. mysql--------四种索引类型

    一.索引的类型 mysql索引的四种类型:主键索引.唯一索引.普通索引和全文索引.通过给字段添加索引可以提高数据的读取速度,提高项目的并发能力和抗压能力.索引优化时mysql中的一种优化方式.索引的作 ...

  9. Android之RecyclerView实现时光轴

    做项目的过程中有个需求需要时光轴,于是网上找了部分资料 ,写了个案例,现在分享给大家. 如图: activity_main.xml <?xml version="1.0" e ...

  10. Ubuntu中vi命令的编辑模式异常

    今天更改Ubuntu软件源的时候,进入源文件的编辑模式时,发现删除键和编辑都不能正常使用,百度之后,知道是由于Ubuntu预装的是vim-tiny,而我们需要使用vim-full.在此记录下该问题以便 ...