SpringMVCプロジェクトを正しく作成することに疑問があります。
インポートしたプロジェクト(たとえば、STSダッシュボードからダウンロード可能なSpring MVC Showcaseの例)を実行すると、ブラウザーのURLバー内にこのプロジェクトのURLは次のようになります。
http://localhost:8080/project-name/
(たとえば、Web MVC Showcaseの例のプロジェクト名は「spring-mvc-showcase」で、次のURLがあります。
http://localhost:8080/spring-mvc-showcase/ )
さて、私の疑問は、STS\EclipseでSpringTemplateを使用して新しいSpringMVCプロジェクトを作成することに関連しています。
STS内で次の操作を行います。
[ファイル]->[新規]->[プロジェクト]をクリックすると、プロジェクトのタイプを選択できるウィザードが表示されます。
そこで、 Spring Template Projectを選択しました。これで、Spring Projectの特定の類型を選択できる他のウィザードウィンドウが表示され、「SpringMVCProject 」を選択しました。
さて、私が設定しなければならない他のウィザードウィンドウが表示されます。
プロジェクト名と挿入:my-spring-project
トップレベルのパッケージと私は挿入物を持っています:org.mycompany.foo
さて、今私はサーバー上でプロジェクトを実行していますが、これは実行されず、ブラウザのURLバー内にありません
http://localhost:8080/my-spring-project/ (as I would expect)
しかし、私は持っています:
http://localhost:8080/foo/
スタックトレースに次のエラーメッセージが表示されます。
警告:org.springframework.web.servlet.PageNotFound-「appServlet」という名前のDispatcherServletでURI [/foo/]を使用したHTTPリクエストのマッピングが見つかりません
次に、プロジェクトのクリーンアップを実行すると、STSはプロジェクトを再構築し、再度実行しようとすると、プロジェクトは正常に実行され、URLアドレスは残ります。
http://localhost:8080/foo/
これは奇妙な振る舞いだと思いますが、その理由はわかりません...
それで:
1)URLがない理由
http://localhost:8080/my-spring-project/
?
2)プロジェクトを実行するためにプロジェクトをクリーンアップして再構築する必要があるのはなぜですか?
3)標準のSpring MVCプロジェクトの作成でエラーが発生しましたか?