springmvc中配置servlet后tomcat无法启动的问题

    科技2022-07-11  79

    springmvc中配置servlet后tomcat无法启动的问题

    servlet配置:

    <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--自定义springmvc读取配置文件的位置--> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>myweb</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>

    spring配置:

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> <!--声明组件扫描器--> <context:component-scan base-package="org.lcx.controller"/> </beans>

    tomcat无法启动,报错:

    war exploded: Error during artifact deployment. See server log for details.

    确定的是RequestMapping和jsp页面代码正确,

    从网上找到各种类似的情况的帖子,有的是jar包的配置问题尝试改了一下发现没用

    或者是mapping的url格式写错了,经排查url没错。

    尝试把mapping配置注释掉,发现tomcat可以正常启动,因此确定问题出在mapping上。

    解决

    最后发现是< servlet-mapping >中的servlet-name和< servlet >的servlet-name不一致。。。太狗血了,被自己蠢哭了

    <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--自定义springmvc读取配置文件的位置--> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
    Processed: 0.025, SQL: 8