2011-08-07 11 views
2

私はTomcat 7でJavaアプリケーションを実行しています。アプリケーションのURLに名前を付けることができます。例:URLがTomcat 7でアプリケーション名が失われる

http://localhost:8080/MyApp 

私はWARを構築し、展開し、アプリケーションに正しくアクセスします。ただし、私の<a><form>タグのすべてはURLにアプリケーション名を追加しません。つまり、次のようにしてください。

<a href="/myPage">Click Me</a> 

は動作しません。リンクは次のように終わる:

http://localhost:8080/myPage 

代わり

http://localhost:8080/MyApp/myPage 

の、リンクの上などにアプリケーション名を追加するためにTomcatを設定する方法はありますか?前述のとおり、アプリケーション名をURLから削除しない(つまりルートにする)必要はありません。私はいくつかの回避策があることを知っています(例えば、 <c:url>などを使用して、手動でURLにコンテキストパスを追加するなどですが、Tomcatにこれを行うように指示することができるかどうか疑問に思っています。 tは私のアプリケーションになって。それが重要ならば、私は春のMVCとMavenを使用しています。

答えて

4

私はいくつかの回避策は、(のような手作業など、<c:url>を使用して、URLにコンテキストパスを追加

がいることを知っています

これらは解決策ではありません。あなたは、webappがドメインルート上で実行されていると仮定して間違いを犯したばかりです。解決策--imo-は、HTML <base>を使用しています。 hereも参照してください。

しかし、私はTomcatにこれを行うように言われているのだろうかと思っています。リクエストが私のアプリケーションに届いていないので、これは尋ねる場所だと思います。

番号サーブレットコンテナの責任はありません。 JspServletでもDefaultServletもこれを行いません。 Webapp自身の責任です(サーバー管理者の責任において限ります)。

+0

いいえ。周りに道がないように見えます。私はタグ(は私のために奇妙な演技している)と固執すると思います。助けてくれてありがとう。 –

関連する問題