jsp中引入jquery報錯:Failed to load resource: the server responded with a status of 404 (Not Found)

問題描述:jquery

  今天本身在搭建spring、springMVC、hibernate框架,搭建完成後,在引入jquery時,發現jquery無論用。個人解決順序是:web

一、檢查路徑,發現路徑沒錯,另外須要注意的是,非rest風格的代碼下,js資源通常爲靜態資源,不要放在web-inf下,不然會加載不上,另外注意js編碼是否和當前頁面編碼一致,此處我設置utf-8編碼。spring

<script src="${pageContext.request.contextPath }/js/jquery-1.4.2.js"  charset="utf-8"></script>

二、排錯,我將jquery中代碼直接複製到個人script裏,發現是管用的,這至少說明,jquery沒有問題。mvc

三、控制檯輸出發現了問題所在:app

14:57:55,021 DEBUG DispatcherServlet:823 - DispatcherServlet with name 'dispatcherServlet' processing GET request for [/SSH_TEST/js/jquery-1.4.2.js]
14:57:55,022 DEBUG RequestMappingHandlerMapping:209 - Looking up handler method for path /js/jquery-1.4.2.js
14:57:55,023 DEBUG RequestMappingHandlerMapping:219 - Did not find handler method for [/js/jquery-1.4.2.js]

  第一句:DispatcherServlet 以get方式請求[/SSH_TEST/js/jquery-1.4.2.js]框架

  第三句:沒有找到編碼

4.解決方法:url

  個人web.xml文件部分以下spa

<!-- springMVC核心控制器 -->
  <servlet>
      <servlet-name>dispatcherServlet</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <init-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>classpath:springMVC.xml</param-value>
      </init-param>
  </servlet>
<!-- map all request to the dispatcherServlet for handling -->
  <servlet-mapping>
      <servlet-name>dispatcherServlet</servlet-name>
      <url-pattern>/</url-pattern>
  </servlet-mapping>

  注意,黃色部分屬於rest風格,即dispatcherServlet將處理全部web容器的請求,當請求加載靜態資源jquery.js時,控制器類中沒有寫,所以會提示【Failed to load resource: the server responded with a status of 404 (Not Found)】,若是是傳統的風格,非rest,通常靜態資源時web容器本身就加載了。hibernate

  處理方法:在springMVC.xml文件添加以下。

<mvc:default-servlet-handler/>
相關文章
相關標籤/搜索