■SpringMVC の小径 第4歩 Spring-MVCの初期設定 |
4-1)web.xml 設定 |
ここまで来たら、Spring-MVCの花園はもう目の前です。 ですが、花園にたどり着く前に最後の難所が待っています。 できれば避けて通りたいところですが、ここしか道がないので意を決して進みましょう。 ここでは、Spring-MVCをTomcatで動かすための設定を行います。 Tomatのデプロイメント記述子 web.xml に対して、Spring-MVCを使うよ!と教えてあげる作業です。 「1-2)Mavenプロジェクトの編集」の際に、web.xmlのひな形が作成されているはずです。 この、ひな形web.xmlを選択して、マウス右ボタンクリックして、 表示されたメニューから「次で開く」ー「Faces構成エディター」で開きます。 |
![]() |
ひな形なので、中身はほとんど空っぽです。 この、web.xmlに、Tomcatアプリケーションの標準的な設定+Spring-MVCの設定を追加します。 具体的な編集内容は以下となります。 |
※)上のweb.xmlの内容は、自由にコピペしてもらって結構です。 それでは少し解説しておきましょう。 1)ウェルカムページ web.xmlのひな形に最初から設定されている設定です。 ApacheのDirectoryIndexと同じで、 http://localhost:8080/jLabo の様にURL末尾が ディレクトリだけを指定してアクセスしてきた場合に表示するページの設定です。 ここでは、ディレクトリ直下の、index.htmlかindex.jspの どちらかを表示する設定になっています。 2)エラーページ HTTPエラーや例外が発生した時に表示するページの設定です。 この設定をやっておかないと、例外処理が発生した場合など、 ブラウザにカッコ悪いエラーページが表示されるので設定しておきましょう。 ここでは、HTTPステータス404(Page Not Found)と HTTPステータス500(Internal Server Error) が発生した場合に、index.html を表示するように設定しています。 もちろん、これ以外にも401エラーとか403エラーとか 色々発生原因はありますが、大体上の2つ以外はめったに発生しないので これでも十分かと思います。 3)文字コードのエンコード 一般的なTomcatアプリケーションのお約束の設定です。 今回、view(HTML)は全て、UTF-8で作成するので、encoding をUTF-8 とします。 これをやっとかないと、ブラウザからのリクエストパラメータの中に日本語(全角)があると文字化けします。 4)Spring MVCの設定 Tomcatに対して、このアプリケーションは、Spring-MVCを使いますよ! という宣言部です。 Spring-MVC設定ファイル名を指示します。 設定ファイル名は、定番的に「applicationContext.xml」とします。 「applicationContext.xml」は、Spring-MVCの肝なので、別途後述します。 5)リクエストパターン指定 ブラウザからリクエストされたURLのパス名の中の一定のパターンを元に、 Spring-MVC HandlerMapping が、コントローラをマッピングするための指定を行います。 このプロジェクトでは、とりあえず「*.xhtml」としておきますが、 具体的例を挙げると) ブラウザのリクエストURLが、「http://localhost:8080/j_Labo/sample.xhtml」 だったとした場合、HandlerMappingは、/sampleという名前でマッピングされたコントローラを検索します。 この名前でマッピングされたコントローラが見つかったら、このコントローラが起動されます。 「http://localhost:8080/j_Labo/sample.jsp」とかリクエストしても リクエストパターンにマッチしないため、エラー404が返されることになります。 パターンは特に決まりはありません。極端な例では「*」とすることもできますが、 これだと、どんなリクエストが来ても、コントローラを起動しようとするので、私はあまりお勧めできません。 あとで、やっぱやーめたとなると、HTMLの修正が大変になるので、最初に真面目に考えて設定しましょう。 |
以上で、デプロイメント記述子 web.xmlの設定は完了です。 最後の難所もいよいよ残すところ、あと一歩。 最後の岩場で足を踏み外さないよう、しっかり足元を確認しながら進みましょう。 |
3-1)Webアプリの基本設計 ![]() |
4-1)web.xml 設定 |
![]() |