springmvc要求がcontrolerに到達できなくなり、404エラーが発生した原因.

15248 ワード

maven集合プロジェクトがSSMフレームを統合する時、以下のような問題が発生しました.プロジェクトの起動が成功した後、HTTP要求をどのように送ってもcontrollerに入れませんでした.最後に404のエラーが発生しました.一連の調査を経てようやく解決した.具体的な検査方法と手順は以下の通りです.
  • web.xmlファイルから
  • を見ます.
    
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      <display-name>crowdfundingdisplay-name>
      <context-param>
        <param-name>contextConfigLocationparam-name>
        <param-value>classpath*:spring/spring-*.xmlparam-value>
      context-param>
    
      
      <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
      listener>
    
      
      <filter>
        <filter-name>encodingfilter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilterfilter-class>
        <init-param>
          <param-name>encodingparam-name>
          <param-value>UTF-8param-value>
        init-param>
        <init-param>
          <param-name>forceEncodingparam-name>
          <param-value>trueparam-value>
        init-param>
      filter>
      <filter-mapping>
        <filter-name>encodingfilter-name>
        <url-pattern>/*url-pattern>
      filter-mapping>
    
    
      <filter>
        <filter-name>HiddenHttpMethodFilterfilter-name>
        <filter-class>org.springframework.web.filter.HiddenHttpMethodFilterfilter-class>
      filter>
      <filter-mapping>
        <filter-name>HiddenHttpMethodFilterfilter-name>
        <servlet-name>springmvcservlet-name>
      filter-mapping>
    
    
    
      <servlet>
        <servlet-name>springmvcservlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
        <init-param>
          <param-name>contextConfigLocationparam-name>
          <param-value>classpath:spring/springmvc-context.xmlparam-value>
        init-param>
        <load-on-startup>1load-on-startup>
      servlet>
      <servlet-mapping>
        <servlet-name>springmvcservlet-name>
       
        <url-pattern>/url-pattern>
      servlet-mapping>
    
      
      <session-config>
        <session-timeout>60session-timeout>
      session-config>
    
      <welcome-file-list>
        <welcome-file>index.jspwelcome-file>
      welcome-file-list>
    web-app>
    
    状況1
    classpath:spring/spring-context.xmlモニターのパラメータは、先にspring容器の構成をロードするべきです.最初にspring mvcの配置をロードするとcontextが実現されます.classpath:spring/spring mvc-context.xml DisplatServlet先端制御ローディングはsprigmvc構成が正しいです.最初にspring容器の配置をロードすると、上記の問題が発生し、HTTP要求がコントローラに入らないと最後に404エラーが発生します.
    状況2
    このような状況は比較的に簡単です.注釈駆動は配置されていますか?2ビュー解析を見てください.間違いがないかどうかは、WEB-INFの下のディレクトリでなければなりません.
  • 以上は作者の分析のいくつかの点で、もし提案があればコメントしてください.ありがとうございます