3

編集:この質問は、私が行った誤った観察に応えて尋ねられました。無視してください。

JSPF は、JSP 内に含めることができるフラグメントを定義するために使用されることを知っています。

この規則以外に、サーバー (Tomcat など) またはユーザーエージェント (Firefox、Google ボットなど) がファイルを処理する方法に違いはありますか?

私たちの Web サイトには、AJAX 経由でロードされるいくつかのポップアップ/ダイアログ ボックスがあります。これらのほとんどのコンテンツは JSPF 内に格納され、URL で参照されます (例: http://www.domain.com/folder/file.jspf )。最近、ポップアップが代わりに JSP 内にある場合、次のように異なる動作をすることがわかりました。

1) Google はそれをスタンドアロンのページとしてインデックスに登録します。
2) jQuery$(document).ready(function() {alert('this code is executed')});は実行されません。

4

2 に答える 2

2

まず、ブラウザは JSP ファイルも JSPF ファイルも直接処理しません。

代わりに、ブラウザーは URL でリソースを要求し、サーバー (この場合は Tomcat) は HTML 形式のドキュメントで応答します。

はい、.jspリソースを要求しましたが、サーバーがページをコンパイルし、Tomcat が HTML 出力をブラウザーに生成しました。

その時点で、ブラウザはプレーンな HTML ページを処理していました。

URL 経由で JSPF ファイルに直接アクセスすると、潜在的な問題が発生する可能性があります。フラグメントは、特別な JSP ディレクティブによって含める必要があります: include. コード規則を参照Use of Composite View Patternsしてください

于 2015-09-18T10:15:08.763 に答える
2

URL を構築して jspf ファイルに到達できるようにする唯一の方法は、それらを通常の JSP ファイルと同じディレクトリに配置することです。(/WEB-INF/ 内に配置する場合、これは許可されません) したがって、これを行う場合は、使用しているコンテナーに依存します。Tomcat はページをテキスト ドキュメントとして取得します。ただし、フロントエンド Web サーバーはこれらの URL をブロックできます。 .jspf ファイル拡張子とは何ですか? それをコンパイルする方法は?

それが役に立てば幸い。

于 2015-09-22T15:02:24.850 に答える