<af:column>

af:column column column

UIComponentクラス: oracle.adf.view.rich.component.rich.data.RichColumn
コンポーネントのタイプ: oracle.adf.RichColumn

tableコンポーネントの直接的な子は、すべて<af:column>コンポーネントである必要があります。可視できる各columnコンポーネントでは、tableに個別の列が作成されます。

columnのheaderText属性またはheaderファセットを使用して、列ヘッダーを作成します。次の例では、FirstnameおよびLastnameの列ヘッダーを持つ2列の表を作成します。

  <af:table>
    <af:column>
      <f:facet name="header">
        <af:outputText value="Firstname"/>
      </f:facet>
      ...
    </af:column>
    <af:column>
      <f:facet name="header">
        <af:outputText value="Lastname"/>
      </f:facet>
      ...
    </af:column>
  </af:table>
          

各columnの子コンポーネントは、その列の各行のデータを表示します。columnでは行ごとに子コンポーネントを作成するのではなく、各子が行につき1度、繰り返しレンダリング(スタンプ設定)されます。このスタンプ処理により、コンポーネントの特定タイプのみcolumnの子としてサポートされます。サポートされるコンポーネントには、動作を持たないすべてのコンポーネント、およびEditableValueHolderまたはActionSourceインタフェースを実装する多くのコンポーネントが含まれます。

各行にスタンプが設定されると、現在の行のデータはELに到達可能なプロパティにコピーされます(tableのgetRowData()を参照してください)。このプロパティの名前はtableのvarプロパティで定義されています。tableがレンダリングを完了すると、このプロパティは削除されます(または元の値に戻されます)。次の例では、各行のデータがELのrowプロパティの下に配置されます。各columnは、rowプロパティからさらなる情報を取得し、各行のデータを表示します。

  <af:table var="row" value="#{myBean.employees}">
    <af:column>
      <af:outputText value="#{row.firstname}"/>
    </af:column>
    <af:column>
      <af:outputText value="#{row.lastname}"/>
    </af:column>
  </af:table>
          

ソート

この列を検索可能にするには、sortableプロパティをtrueに、sortPropertyをこの列がソートするモデル名に設定します。\ tableのsetSortCritiera()を使用すると、ソートはプログラム的に実行可能です。

列グループ

<af:column>タグは、列グループを作成するため、ネストできます。列グループのヘッダーは、グループに含まれるすべての列にスピンされます。次の例では、Nameヘッダーを持つグループを作成し、FirstヘッダーおよびLastヘッダーの2つのサブ列を含めます。

スタイリング

<af:column>タグでレンダリングされた表のデータ・セルは、styleClassおよびinlineStyle属性を使用してスタイルを設定できます。列ヘッダー・セルのスタイルを指定するにはheaderClass属性を使用します。これらの属性を介したパディングおよび枠線の設定変更は、大変危険であることに注意してください。幅はサーバー側で計算し、パディングおよび枠線属性はスキン・プロパティに応じて指定されるものと想定しています。これらがオーバーライドされると、表のセルの位置合せが崩れる可能性があります。

shortDesc属性は、現在、<af:column>コンポーネントではサポートされていません。noWrapがオフの状態でセルのデータが切り捨てられると、ヘッダーおよびデータ・セルのツールチップが自動表示されます。

  <af:table var="row" value="#{myBean.employees}">
    <af:column headerText="Name">
      <af:column headerText="First">
        <af:outputText value="#{row.firstname}"/>
      </af:column>
      <af:column headerText="Last">
        <af:outputText value="#{row.lastname}"/>
      </af:column>
    </af:column>
  </af:table>
          

イベント

フェーズ 説明
org.apache.myfaces.trinidad.event.AttributeChangeEvent アプリケーションの起動、
リクエスト値の適用
属性変更を記述するために配信されるイベント。属性変更イベントは、プロパティに対するプログラム的な変更については配信されません。アプリケーションの特定のリクエストなしにレンダラによってプロパティが変更される場合にのみ配信されます。属性変更イベントの例には、クライアント側のサイズ変更をサポートしていた列の幅などがあります。

サポートされるファセット

名前 説明
filter この列のフィルタをレンダリングするのに使用するノード。
footer この列のフッターとしてレンダリングされるノード。
header この列のヘッダーをレンダリングするのに使用するノード。

属性

名前 ELのサポート 説明
align String あり 有効な値: start、end、center、left、right

この列の位置合せ。start、endおよびcenterでは、それぞれLTR表示の左、右、センターでインデントされます。leftまたはrightは、LTRまたはRTL表示に関係なく、左側または右側でのインデントが必要なときに使用できます。デフォルト値はnullで、これはスキンに依存し、行のヘッダー列およびデータ列の対比で異なることを示します。
attributeChangeListener javax.el.MethodExpression ELのみ 属性変更リスナーへのメソッド・リファレンス。属性変更イベントは、プロパティに対するプログラム的な変更については配信されません。アプリケーションの特定のリクエストなしにレンダラによってプロパティが変更される場合にのみ配信されます。属性変更イベントの例には、クライアント側のサイズ変更をサポートしていた列の幅などがあります。
binding oracle.adf.view.rich.component.<wbr/>rich.data.RichColumn ELのみ コンポーネント・インスタンスをBean上に格納するELリファレンス。これは、バッキングBeanからコンポーネントへのプログラム的なアクセスを提供するため、またはコンポーネントの作成をバッキングBeanに移動するために使用できます。
clientComponent boolean あり クライアント側のコンポーネントが生成されるかどうか。このフラグを設定してもしなくてもコンポーネントは生成されますが、クライアントJavascriptがコンポーネント・オブジェクトを必要とする場合、コンポーネントの存在を保証するにはtrueに設定する必要があります。現在デフォルトで生成されるクライアント・コンポーネント・オブジェクトは、将来は存在しない可能性があります。このフラグを設定することがコンポーネントの存在を保証する唯一の方法であり、クライアントは暗黙的な動作に依存できません。ただし、このフラグの設定にはパフォーマンス・コストが伴うため、絶対に必要でないかぎり、クライアントではクライアント・コンポーネントを有効にすることを避ける必要があります。
customizationId String あり この属性は推奨されていません。永続的なカスタマイズを適用するには、id属性を使用する必要があります。この属性は、次のリリースでは削除されます。
displayIndex int あり 列の表示順の索引。列は再配置可能で、displayIndexに基づいて表に表示されます。列はdisplayIndexプロパティを基にソートされ、displayIndexを持たない列は表示順の最後に表示されます。displayIndex属性は、最上位レベルの列でのみ有効です。これは親列以外の子の列は再配置できないためです。
次のレンダー・キットではサポートされません。 org.apache.myfaces.trinidad.core
dontPersist String[] あり adf-config.xmlに登録済のPersistent Change Managerを介してFilteredPersistenceChangeManagerにより変更が持続されない属性のリスト。このリストにある自動コンポーネント・パーソナライズはセッション・ストアに対しては依然として持続します。
filterFeatures java.util.Set あり この列のフィルタ機能。この列のquery-by-example(QBE)でのフィルタ方法を指定する一連のフラグです。現在サポートされている唯一の値は、caseSensitiveとcaseInsensitiveです。指定しない場合、大文字と小文字を区別するかどうかはモデルに依存します。この機能は、(大文字と小文字を区別するフィルタリング、または区別しないフィルタリングなど)特殊なフィルタリング操作を実行するための、フィルタリングがサポートされるコレクション・モデルのヒントです。
filterable boolean あり 列がフィルタ可能かどうか。フィルタ可能な列では、列ヘッダーにフィルタ・フィールドが表示されます。列をフィルタ可能にするには、この属性をtrueに設定し、filterModel属性を表で設定しておく必要があることに注意してください。列ヘッダーが存在するときは、リーフ列のみフィルタ可能で、フィルタ・コンポーネントが表示されます。列ヘッダーが存在するのは、列でheaderText属性またはheaderファセットが設定されているときです。

この列のsortProperty属性は、filterPropertyのキーとしてfilterModelで使用します。つまり、列をフィルタ可能にするには、sortPropertyを列で設定しておく必要があるということです。

footerClass String あり 列フッターで使用するCSSのスタイル・クラス。列のheaderClass、footerClassおよびstyleClass属性は注意して使用する必要があります。ヘッダー、フッター、およびデータ・セルの水平方向のパディング/枠線を変更すると、表のセルの位置合せが崩れることがあります。
frozen boolean あり 列を固定するかどうか指定します。表では、固定された列までのすべての列がヘッダーでロックされ、その他の列とともにスクロールされなくなります。固定属性は、最上位レベルの列でのみ有効になります。これは固定された親を持たない子の列は固定できないためです。表が行のdetailStampを持つとき、列の固定はオフになります。
次のレンダー・キットではサポートされません。 org.apache.myfaces.trinidad.core
headerClass String あり 列ヘッダーで使用するCSSのスタイル・クラス。列のheaderClass、footerClassおよびstyleClass属性は注意して使用する必要があります。ヘッダー、フッター、およびデータ・セルの水平方向のパディング/枠線を変更すると、表のセルの位置合せが崩れることがあります。
headerNoWrap boolean あり 列ヘッダーに折返しを許可するかどうか。
次のレンダー・キットではサポートされません。 oracle.adf.rich
headerText String あり 列のヘッダーに表示するテキスト。これは出力を生成する便利なもので、outputTextを含むheaderファセットの追加に相当します。headerファセットが追加されると、headerTextは列のヘッダーでレンダリングされません。
helpTopicId String あり helpProviderのトピック参照で使用するID。
id String なし コンポーネントの識別子。識別子は、HTMLで許可される構文のサブセットに準拠している必要があります。
  • 長さゼロの文字列は指定しないでください。
  • 最初の文字は、ASCII文字(A-Za-z)またはアンダースコア(_)にする必要があります。
  • 後続の文字は、ASCII文字または数字(A-Za-z0-9)、アンダースコア(_)またはダッシュ(-)にする必要があります。
inlineStyle String あり このコンポーネントに対して使用するCSSスタイル。これは、基本スタイルの変更用です。inlineStyleは、コンポーネントのルートDOM要素に適用されるCSSスタイルのセットです。inlineStyleのCSSプロパティが対象となるDOM要素に影響を与えない場合は、スキンを作成し、特定のDOM要素をターゲットにしたスキニング・キーを使用する必要があります(::label、::icon-styleなど)。
minimumWidth String あり 列に指定できるピクセルの最小値。ユーザーが列のサイズを変更しようとすると、この幅の最小値が強制されます。また列のサイズが変更可能な場合でも、幅のサイズがこの最小値より小さくなることはありません。定義されたピクセル幅よりその幅の最小値が大きい場合、幅の最小値には2つの値のうち小さい方が適用されます。デフォルトでは幅の最小値は12ピクセルです。
次のレンダー・キットではサポートされていません。 org.apache.myfaces.trinidad.core
noWrap boolean あり この列で空白の折返しを許可するかどうかを指定します。
partialTriggers String[] あり 部分更新をトリガーするコンポーネントのID。このコンポーネントは、トリガー・コンポーネント上でリスニングします。トリガー・コンポーネントの1つがなんらかの更新を発生させるイベントを受信した場合、このコンポーネントも更新されることをリクエストします。識別子はソース・コンポーネント(このコンポーネント)に対して相対的であり、NamingContainerで構成されている必要があります。コンポーネントがすでにネーミング・コンテナ内にある場合、単一のコロンを使用するとページのルートから検索を開始でき、複数のコロンを使用するとNamingContainerを上方向に移動できます。たとえば、::を前に置くと、コンポーネントのネーミング・コンテナ(または、コンポーネントがネーミング・コンテナである場合にはそのコンポーネント自体)から出てそこから検索を開始します。:::を前に置くと、2つのネーミング・コンテナ(コンポーネントがネーミング・コンテナである場合にはそのコンポーネント自体も含まれます)から出てそこから検索を開始します。
persist String[] あり adf-config.xmlに登録済のPersistent Change Managerを介してFilteredPersistenceChangeManagerにより変更が持続される属性のリスト。このリストにない自動コンポーネント・パーソナライズはセッション・ストアに対しては依然として持続します。
rendered boolean あり コンポーネントがレンダリングされるかどうか。falseに設定した場合、このコンポーネントについて出力は配信されません(コンポーネントはどのような方法でもレンダリングされず、クライアントで表示できません)。
rowHeader String あり 有効な値: true、false、unstyled

この列が行ヘッダー列かどうか。有効な値は、true、falseおよびunstyledです。デフォルト値は、falseです。screen-reader table/treeTableでは、unstyled行ヘッダー列は開始位置(displayIndex = 0)に移動し、固定されます。デフォルトの(rich)table/treeTableコンポーネントでは、unstyled行ヘッダー列は開始位置(displayIndex = 0)には移動せず、列ヘッダーのCSSスタイルなしでレンダリングされます。
selected boolean あり 列が選択されているかどうかを指定します。
次のレンダー・キットではサポートされません。 org.apache.myfaces.trinidad.core
separateRows boolean あり このプロパティは現在、リッチ・クライアントでサポートされていません。
次のレンダー・キットではサポートされません。 oracle.adf.rich
shortDesc String あり コンポーネントの短い説明。このテキストは、通常、ツールチップ・ヘルプ・テキストを表示するためにユーザー・エージェントによって使用されます。この場合、ツールチップの動作はユーザー・エージェントによって制御されます。たとえば、Firefox 2では長いツールチップは切り捨てられます。フォーム・コンポーネントの場合、shortDescはノート・ウィンドウに表示されます。
showRequired boolean あり 列で、必要なユーザー入力のビジュアル指定を表示するかどうかをを示します。
sortProperty String あり この列で表示されるプロパティ。これは、フレームワークが(たとえば)表のデータをソートするのに使用するプロパティです。
sortable boolean あり 列がソート可能であるかどうか。ソート可能な列には、クリックできるヘッダーが含まれます。(これをクリックすると)ヘッダーは列のプロパティで表のソートを行います。列をソート可能にするには、この属性をtrueに設定し、基礎となるモデルがこの列のプロパティでサポートされている必要があることに注意してください。

ソートが必要な場合は、この列のsortProperty属性を設定しておく必要があります。

styleClass String あり このコンポーネントに対して使用するCSSスタイル・クラス。スタイル・クラスは、jspxページまたはスキニングCSSファイルなどで定義できます。または、AFInstructionTextのようなパブリック・スタイル・クラスの1つを使用できます。
visible boolean あり 列の可視性。これがfalseの場合、列はクライアント側の表に表示されません。renderedとは異なり、これはサーバー側でのライフサイクルの影響を受けます。つまり、実行されたバインドなどが列に含まれる可能性があります。renderedがfalseの場合、コンポーネントはレンダリングされず、クライアント側で可視化されません。
次のレンダー・キットではサポートされません。 org.apache.myfaces.trinidad.core
width String あり 列の幅。列の幅のデフォルト値は100pxです。列には自動のサイズ指定機能がありません。幅属性を設定し、列がコンテンツの幅に対し、十分な幅を持つようにしてください。