- - PR -
IFRAMEのSRCに記述方法
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-10-15 02:09
インラインフレームを使った画面をStrutsで作りたいのですが、
<iframe src="xxx.jsp"> という書き方をすると、HTTP404になりました。 インラインフレームに表示したいJSPがWEB-INF/JSP配下にあるため、 JSPの場所を変えずに表示させるにはweb.xmlの設定を変えるしかないそうです。 私の思いとしては、 ・JSPを直接URL指定されないようにしたいので、JSPはWEB-INFの配下に置きたい。 ・インラインフレームで表示させるためだけに、そのJSPだけブラウザから直接見える場所に置くのはやめたい。 ・srcにサーブレットは指定したくない。 といった感じです。 できれば、web.xmlの設定もやりたくないんですが、一般的というか最適な手法を知らないので、 どうすれば良いかわかりません。 シンプルなのがいいのですが・・・。 | ||||||||
|
投稿日時: 2005-10-15 02:15
インラインフレームといえど、ブラウザがリクエストするのは普通の URL です。
直接 URL を叩いて閲覧できる場所にコンテンツが置いてなければなりません。 「一般的な手法」は、残念ながら「ブラウザから直接見える場所に置く」方法です。 | ||||||||
|
投稿日時: 2005-10-15 10:20
>「一般的な手法」は、残念ながら「ブラウザから直接見える場所に置く」方法です。
では、ブラウザでJSPを直接URL入力されても仕方がないということですよね? | ||||||||
|
投稿日時: 2005-10-15 11:23
直接URLを入力して404エラーにならないアドレスじゃなければ そもそもの表示ができないので、諦めるしかありませんね。 別のウィンドウで開くか、ウィンドウの中のある部分で開くかの違いです。 直接URLを入力されるというのはWEBアプリの宿命です。 対策が全くないわけではなく、 1.JavaScriptで自分自身がトップじゃなければ別画面へという方法
これならカジュアルハッキング対策は可能じゃないでしょうか。 2.JSPでインクルード IFRAMEは諦めて、JSPでインクルードを行えば、 フォームとメインのページを、論理的に分けることが可能になりますが、 JSPをWEB-INF配下に配置してもインクルードは可能です。 | ||||||||
|
投稿日時: 2005-10-16 23:12
のは何故でしょうか? これさえ認めれば
という他の要望も満たされると思うのですが ![]() [ メッセージ編集済み 編集者: Take-C 編集日時 2005-10-16 23:13 ] | ||||||||
|
投稿日時: 2005-10-17 00:27
Take-Cさんの書き込み (2005-10-16 23:12) より:
これは、親画面に表示する情報を取得すると同時にインラインフレームに表示する情報を取得して、 インラインフレームの中でそれを使って表示させようと考えていたからです。 ですが、ブラウザが直接見えるところ(<Wepアプリのルート>/JSP配下)に置いたところ、インラインフレームで表示できませんでした。 どうやら私の知識不足で、たとえインラインフレームに表示する情報を、親画面に表示する情報と同時に取得したとしても、インラインフレームの中でそれを参照することは出来ないようです。 理屈ははっきりと理解できていませんけど(^^; なので、srcにはサーブレットを指定するようにしました。 これでうまくいっています。 [ メッセージ編集済み 編集者: NEO 編集日時 2005-10-17 00:28 ] [ メッセージ編集済み 編集者: NEO 編集日時 2005-10-17 00:28 ] | ||||||||
|
投稿日時: 2005-10-17 09:44
iframeのsrcを処理するのはクライアントなので、もうサーバ(Strutsとか)は関係なくなってますよ。
あくまでクライアント側で判断できることしか、指定できないです。 でも、 ><Wepアプリのルート>/JSP配下 なら表示できそうな気がするんですが。 単純にその「インラインフレームに表示する情報」が間違っているせいで、 クライアント側でおかしなHTMLになっているんじゃないですか? 右クリック→ソースを表示して、srcが狙い通りになっているか、確認してみては。 |
1