勉強のため、struts + Eclipseを使用して、JSP
を作成しているのですが、<link>タグを使用して
スタイルシートを読み込みたいのですが、うまく
いきません。(1)のURLでJSPを表示するとうまくい
くのですが、イベントを実行(submit)すると、URL
が(2)に変更されてしまい、読み込めません。
URL(1)
http://localhost:8080/aa/bb/cc/dd/index1.jsp
URL(2)
http://localhost:8080/aa/index1.do
現在、<link>タブは相対パスを指定しているの
ですが、パスを絶対パスに変更すればうまくいき
ます。
変更前(相対パス指定)
<link href="../style.css"・・・>
変更後(絶対パス指定)
<link href=
"http://localhost:8080/aa/bb/cc/style.css"・・・>
他にスタイルシートを読み込む方法はございません
でしょうか。よろしくお願いします。
No.3ベストアンサー
- 回答日時:
解決したと思いますが、誤った書き込みがあるので訂正します。
>JSP は一度、コンパイルされて、ワークフォルダに実体(.java)ができますから、表示されている JSP の実体がある場所がカレントパスになります。
>こういった事象は、カレントパスの誤認識のせいで起こる場合があります。
の部分は間違いです。
linkタグで指定されたCSSの場所はJSPやサーブレットが解決するわけではなく、ブラウザが解決します。なのでJSPの実体のパスなどは無関係で、カレントパスの誤認識等で起こるわけではありません。むしろ正常な動作です。
URL(1)でアクセスした場合、ブラウザは「http://localhost/aa/bb/cc/dd/」をカレント(現在地)と見なします。
しかし、URL(2)でアクセスした場合、ブラウザは「http://localhost/aa/」をカレントと見なすため、CSSのパスが相対パスで指定された場合、両者のCSSは全く違うものを指すことになります。
No.2
- 回答日時:
base 要素で相対パス解決の起点を指定してみてはいかがでしょうか。
No.1
- 回答日時:
JSP は一度、コンパイルされて、ワークフォルダに実体(.java)ができますから、表示されている JSP の実体がある場所がカレントパスになります。
こういった事象は、カレントパスの誤認識のせいで起こる場合があります。
私は、CSS ファイルに関しては、いつもルート('/')から指定するようにしております。
例:
<link rel="StyleSheet"
href="/project/jsp/common/style.css"
type="text/css">
ルートパスはシステム毎の設定(構成)で変わりますので、ルートパスさえしっかりと把握できれば、このやり方でできると思います。
返答ありがとうございました。ご指摘した通りでした。
<link>タブのパスをルートからに変更し、workフォルダ
に格納した所、読み込む事に成功致しました。凡ミス
です。ご指摘ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javaが文字コードの影響でコン...
-
IIS環境でJAVAを使用したい
-
c++Builder ver6.0のパッケー...
-
javax.servlet は存在しません...
-
.jarファイルの中身って書き換...
-
Eclipse3.5EEでJavaのコンパイ...
-
ソースパスとクラスパスの違い...
-
eclipseの構文エラーについて
-
importしたパッケージが見つか...
-
packageとimportの関係のコンパ...
-
Javaのコンパイル結果が表示さ...
-
eclipseの設定のJREとコンパイ...
-
emacsでjavaをコンパイルする方法
-
Java 文字コードのエンコーディ...
-
JFreeChartの環境変数設定について
-
コンパイルができないのですが...
-
コンパイルが通らない
-
Eclipseで、プロジェクト名のと...
-
javaクラスファイルをEclipseで...
-
classファイルについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.jarファイルの中身って書き換...
-
javaが文字コードの影響でコン...
-
IIS環境でJAVAを使用したい
-
Eclipse3.5EEでJavaのコンパイ...
-
javax.servlet は存在しません...
-
TOMCAT_HOMEって?
-
「識別子がクラス名でも名前空...
-
eclipseの構文エラーについて
-
日本語対応 逆コンパイラについて
-
逆コンパイルの見方について
-
javaの簡単なソースがコンパイ...
-
Javaのコンパイル結果が表示さ...
-
JAVAでC/C++の条件コンパイルの...
-
ソースパスとクラスパスの違い...
-
importしたパッケージが見つか...
-
c++Builder ver6.0のパッケー...
-
TeXで図を挿入できません.助け...
-
サクラエディタでjavaのプログ...
-
Beanクラスのimportについて
-
-deprecationとは?
おすすめ情報