WEB-INFフォルダに.jspファイルとして解決したい.htmと.xmlの両方のURLがあります。 * .htmと* .xmlの両方のURLを同じサーブレットで処理するように指定する方法を教えてください。Spring-MVC:1つのサーブレットマッピングに2つのURLパターンを使用できますか?
3
A
答えて
1
「web.xml」ファイルに<servlet-mapping>
要素について話しているとします。
答えは同じ<servlet>
要素に対して異なるパターンの2つの<servlet-mapping>
要素を使用して(並べ替えて)行うことができます。
注意:これはJava EEサーブレット仕様の機能です。関連するリクエストのディスパッチは、Springがリクエストを見る前に行われます。
3
はい、非常にうまくいくでしょう。
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.xml</url-pattern>
</servlet-mapping>
7
同じマッピングで複数のurl-patternタグを追加するには、私はあなたを望むビューオブジェクト(.jspファイル)にそれらを解決し、あなたのコントローラを作りに関しては春3.0
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>/<url-pattern>
<url-pattern>*.htm</url-pattern>
<url-pattern>*.html</url-pattern>
<url-pattern>*.xml</url-pattern>
</servlet-mapping>
を使用してのために働きますコントローラークラスを拡張し、特定の命名規則に従うコントローラーを使用するか、注釈駆動コントローラーを使用して行うことができます。以下は、注釈駆動型コントローラの例です。
@Controller
public class Controller {
@RequestMapping(value={"/","/index","/index.htm","index.html"})
public ModelAndView indexHtml() {
// RETURN VIEW (JSP) FOR HTM FILE
}
@RequestMapping(value="/index.xml")
public ModelAndView indexXML() {
// RETURN VIEW (JSP) FOR XML FILE
}
}
+1
これを追加すると、イメージや「/webapp/icons/calender.jpg」という形式の他のアイコンにアクセスしているときに問題が発生する可能性があります。これは、これらのGETリクエストのすべてがコントローラに向けられるため、問題を引き起こします。 –
関連する問題
- 1. URLパターンのサーブレットマッピング
- 2. SpringMVCサーブレットマッピング
- 3. サーブレットマッピングURLパターン
- 4. リダイレクト1短いURLから2つのURLにPHPを使用
- 5. 2つのURLを1つのURLに結合する2 - ionic2
- 6. 1つのウェブサイトに2つのFacebookブックアプリIDを使用できますか?
- 7. VHDLの1つのプロセスで2つのwait文を使用できますか?
- 8. 1つのアクティビティで2つ以上のレイアウトを使用できますか?
- 9. 1つのAndroidアプリケーションで2つのFirebaseプロジェクトデータベースを使用できますか?
- 10. glob()PHPで2つのパターンを使用していますか?
- 11. 1つのURLに2つのビュー
- 12. 角型JSは2つの2つのURLに対して1つのビューを使用します
- 13. 2つのdgmlダイアグラムを1つにマージできますか?
- 14. 2つのURLの間で共通のパターンを見つけるには
- 15. 1つのXIBに2つのテーブルビューを持つことはできますか?
- 16. sedを使用してすべてのパターンを1つのパターンに置き換えます
- 17. 2つのURLを1つのハンドラにルーティングする
- 18. ワニスの1つのキャッシュページに2つの異なるURLを設定することはできますか?
- 19. 1つのデスクトップで2つのMavenのインスタンスを使用する
- 20. 要素を1つのXSDで2回使用しますか?
- 21. サーブレットマッピングでこれらのURLパターンを組み合わせることはできますか?
- 22. htaccessで2つ以上のディレクトリに1つのファイルを使用することはできますか?
- 23. React propsで2つの中括弧の代わりに1つの中括弧を使用できますか?
- 24. 1つのアクティビティで2つのリストビューを使用する
- 25. 1つのページで2つの言語を使用する
- 26. 1つのスプリングブートアプリケーション内で2つのEntityManagerFactoryを使用する
- 27. 2つのクラスで1つのDatePickerDialogを使用する方法?
- 28. 2つのJPanelを1つのJFrameで使用する
- 29. 1つのアクティビティで2つのosmdroidマップ・ビューを使用する
- 30. 1つのテーブルビューで2つのコレクションビューを使用する方法
私はそれを試みたが、私はこのエラーを得た:2011年2月10日11時43分45秒PM org.springframework.web.servlet.DispatcherServlet noHandlerFound WARNING:マッピングはURIとHTTPリクエストが見つかりません[/ myfirstgrid /invoices.xml]の名前が 'myfirstgrid'のDispatcherServlet – ktm5124
2つのサーブレットを持つ方が良いでしょうか? – ktm5124
@ ktm5124 - それは別の問題だと思います。 2つの ' '要素を持つ設定がうまくいかなかった場合、リクエストは' DispatcherServlet'にまったく届きませんでした。アプリケーションサーブレットの配線ファイル/注釈を見てください。 –