質問

下記の違いは何ですか。

 1.<c:import url="layout-link.jsp" /> 2.<sling:include path="layout-link.jsp" /> 3. <cq:include script="layout-link.jsp" />

各タグの利点は何ですか。いつ使用するべきですか?

回答、解決策

1.<c:import url="layout-link.jsp" />

これは、標準タグライブラリのインポートタグです。このタグは、http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/c/import.html に記載されて、Sling については認識していません。

しかし、このタグは RequestDispatcher を使用してディスパッチャーをリクエストし、また Sling と Sling リソースリゾルバを渡します。

2.<sling:include path="layout-link.jsp" />

これは、Sling JSP タグライブラリの include タグです。このタグは Sling を認識しており、また RequestDispatcherOptions をサポートしています。

3.<cq:include script="layout-link.jsp" />

このタグは、タグを含む Sling JSP タグライブラリの Communiqué 特有の拡張子です。私の記憶が間違っていなければ、リソースのレンダリングをただ単に含むだけじゃなく、スクリプトの呼び出しにも対応しています。

各タグのメリットは何ですか? 各タグをいつ使用すべきですか?

Communiqué アプリケーションでは、通常 Communiqué または Sling を含むタグを使用することを推奨します。これにより、Sling のサポートがさらに提供されます。

Sling の拡張機能に関して特定の要件がない場合、JSTL import タグが使用できます。Communiqué の外部あるいはリーダーや変数で生成された(読み込まれた)コンテンツを踏み込んで処理したい場合は、JSP(フラグメント)を使用してみてください。

今後は、Sling や Communique タグライブラリも JSTL インポートタグと同様にインポートタグを提供し、それによって読み込まれた結果をさらに処理することができるようになります。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー