小さな条件付きテスト条件が*.tagファイルを介して再利用されるように、JSP コードをリファクタリングしようとしています。
私の UI には、リクエストに含まれるオブジェクトの 2 状態プロパティの値に依存する大きな部分がいくつかあります。プロパティが「性別」で、オブジェクトのタイプが Person であるとしましょう。
私が言ったように、タグを使用して性別プロパティのテストを簡素化および集中化したいと考えています。この目的のために、2 つのタグ ファイルを作成しました。
/WEB-INF/tags/if-male.tag
/WEB-INF/tags/if-female.tag
ここで、アプリケーション全体で繰り返される別の小さなスポットがあります。私のサイトのユーザーへの挨拶だとしましょう。この考えで、次のようなタグを作成しました。
/WEB-INF/tags/salutation.tag
ご想像のとおり、salutation.tag ファイル内で if-male/if-female テストを使用して「Mrs.」を出力しようとしています。または「さん」このような:
<%@ tag body-content="empty" %>
<%@ taglib prefix="g" uri="/WEB-INF/tags" %>
<g:if-male> Mr. </g:if-male>
<g:if-female> Mrs. </g:if-female>
salutation.tagファイル内での if-male/if-female タグの使用は合法ですか?
私はそのような配置を試みましたが、JDeveloper 10.1.3.4コンパイラが混乱し、同じ「ライブラリ」(/WEB-INF/tagsの下のフォルダ)内の他の2つのタグを呼び出すsalutation.tagタグを処理できないようです。
参照は Jetty 6 で完全に機能し、すべての JSP をプリコンパイルするために JDeveloper に依存せずにアプリケーションを OC4J に直接デプロイすると、同様に機能するように見えます。
誰かがこれに光を当ててくれることを願っています。
ありがとう、
YJ