1. ホーム
  2. spring

[解決済み] URI [/WEB-INF/pages/apiForm.jsp] を持つ HTTP リクエストのマッピングが見つかりません [重複]。

2023-03-03 12:50:24

質問

<余談
この質問には、すでにここで回答があります :
クローズド 5年前 .

私のハンドラはinternalresourceview 'apiForm'に転送しますが、その後私はエラー404 RequestURI = WEB-INF/pages/apiForm.jsp を得る。 私は/WEB-INF/pages/にあるapiForm.jspは確かだ。

13:45:02,034 DEBUG [org.springframework.web.servlet.view.JstlView] -. InternalResourceView 'apiForm' のリソース [/WEB-INF/pages/apiForm.jsp] に転送しています。

13:45:02,035 DEBUG [org.springframework.web.servlet.DispatcherServlet] -. dispatcherServlet with name 'testapp2' determining Last-Modified value for [/WEB-INF/pages/apiForm.jsp].

13:45:02,038 DEBUG [org.springframework.web.servlet.DispatcherServlet] - ハンドラは見つかりませんでした。 in getLastModified

13:45:02,038 DEBUG [org.springframework.web.servlet.DispatcherServlet] -- [org.springframework.web.servlet.DispatcherServlet DispatcherServlet with name 'testapp2' processing request for [/WEB-INF/pages/apiForm.jsp] のリクエストを処理しています。

13:45:02,038 WARN [org.springframework.web.servlet.PageNotFound] - URI [/WEB-INF/pages/apiForm.jsp]を持つHTTPリクエストに対して、マッピングが見つかりませんでした。 HTTPリクエストのURI [/WEB-INF/pages/apiForm.jsp] はDispatcherServletで名前 'testapp2' を持つものです。

13:45:02,045 DEBUG [org.springframework.web.servlet.DispatcherServlet] - リクエストが成功裏に完了しました。

13:45:02,048 DEBUG [org.springframework.web.servlet.DispatcherServlet] - リクエストが成功裏に完了しました。

私のDispatcher.xmlはこのような感じです。

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/WEB-INF/pages/"/>
    <property name="suffix" value=".jsp"/>
</bean>

どのように解決するのですか?

DispatcherServletがapiForm.jspへのリクエストを処理しようとしているように見えます。これは、あなたのweb.xmlサーブレットマッピングが、そのスペースへのリクエストをDispatcherServletへ向けていることを示唆しています。

このようなものがあるのではないでしょうか?

<servlet-mapping>
  <servlet>dispatcher</servlet>
  <url-pattern>/*</url-pattern>
</servlet-mapping>

コントローラを別の拡張子(.doなど)で呼び出し、それに合わせてサーブレットマッピングを更新してみましょう。

 <servlet-mapping>
  <servlet>dispatcher</servlet>
  <url-pattern>*.do</url-pattern>
</servlet-mapping>