JSF 2.0では、 `<h:outputScript/>`タグを使ってHTMLの “script”要素をレンダリングし、それをjsファイルにリンクすることができます。

例えば、

<h:outputScript library="js" name="common.js"/>

それは、次のHTML出力を生成します…​

<script type="text/javascript"
    src="/JavaServerFaces/faces/javax.faces.resource/common.js?ln=js">
</script>

JSF出力スクリプトの例


<h:outputScript/> 'を使って

`common.js`”をレンダリングする方法を示す例は、下の図を参照してください:


jsf2-outputScript-example、title = "jsf2-outputScript-example"、width = 281、height = 148

JSFファイル

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      >
    <h:head></h:head>
    <h:body>

        <h1>JSF 2 outputScript example</h1>

        <h:outputScript library="js" name="common.js"/>

    </h:body>
</html>

次のHTML出力を生成します

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

   <head></head>

   <body>

     <h1>JSF 2 outputScript example</h1>

     <script type="text/javascript"
       src="/JavaServerFaces/faces/javax.faces.resource/common.js?ln=js">
     </script>

   </body>
</html>

JSファイルは、JSFの<h:outputScript/>タグが配置されている場所でレンダリングされます。

ターゲット属性

さらに、 “target”属性を使用して、jsファイルの出力先を制御することもできます。

  1. target = “head” – HTMLのheadタグの先頭に表示します.

  2. target = “body” – bodyタグの最後に表示します.

  3. ターゲットなし – タグの配置場所を表示します.

例えば

<h:outputScript library="js" name="common.js" target="body"/>

次のHTML出力を生成します

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

   <head>

   </head>

   <body>
     <h1>JSF 2 outputScript example</h1>

    <script type="text/javascript"
       src="/JavaServerFaces/faces/javax.faces.resource/common.js?ln=js">
    </script>
   </body>

</html>

ソースコードをダウンロードする

ダウンロードする – リンク://wp-content/uploads/2010/10/JSF-2-outputScript-Example.zip[JSF-2-outputScript-Example.zip](9KB)