これを参照してください。
<h:head>?の代わりに、いつ、なぜ使用するの<head>か?
ただし、 Primefacesは動作しないことを確認しまし<head>た。
は<h:head>、生成されたHTMLにJavaScriptおよびCSSリソースをプログラムで含めるためのフックを提供するJSFコンポーネント<head>です。PrimeFacesはこれを使用して、Ajaxの動作と派手なルックアンドフィールに必要なJS/CSSコードを含めます。
テストとして、<h:head>とPrimeFacesコンポーネントを使用してページを作成し、Webブラウザーでページを開き、右クリックして生成されたHTMLソースを確認します- [ソースの表示]。いくつかのJSFおよびPrimeFaces固有のJS/CSSファイルが追加されていることがわかります。ここで、生成されたHTMLソースを置き換え<h:head>て<head>もう一度確認します。今回は、何も表示されません。
<head>タグはHTMLタグであり、HTMLページのヘッドを定義します(ここでメタデータを定義したり、JavaScriptやCSSなどのリソースを含めたりします)。<h:head>は、ページの一部を処理するJSFタグ(JSF 2.0で導入)です。<head>このようなJSFタグを持つことの利点は、このヘッドがJSFコンポーネントツリーの一部になることです。したがって、Javaコードでこのヘッドを操作できます。Primefacesとの非互換性については、<head>なぜ発生するのかわかりません。JSF 1.xで導入されたFaceletsは、HTMLコードとJSF(XHTML)コードを混在させる機能であり、<head>Primefacesを使用している場合でも、ページにHTMLタグを挿入するのに問題はありません。FaceletsはJSF2.xとネイティブに統合されています。