ヘッダーをスキップ
Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド
11
g
リリース1(11.1.1)
B52028-01
次へ
目次
タイトルおよび著作権情報
はじめに
対象読者
ドキュメントのアクセシビリティについて
関連ドキュメント
表記規則
サポートおよびサービス
第I部 Fusion Webアプリケーションの概説
1
Oracle ADFを使用したFusion Webアプリケーションの構築の概要
1.1
Oracle ADFの概要
1.2
Oracle ADFアーキテクチャ
1.2.1
ADF Business Components
1.2.2
ADF Modelレイヤー
1.2.3
ADFコントローラ
1.2.4
ADF Faces Rich Client
1.3
Oracle ADFによる宣言的開発
1.3.1
アプリケーション・ワークスペースの作成
1.3.2
ユースケースの作成
1.3.3
ADFタスク・フローを使用したアプリケーション・コントロールおよびナビゲーションの設計
1.3.4
共有リソースの識別
1.3.5
データにアクセスするためのADF Business Componentsの作成
1.3.5.1
表のビジネス・ドメイン・オブジェクトのレイヤーの作成
1.3.5.2
ビジネス・サービスの構築
1.3.5.3
Business Component Browserによるビジネス・サービスのテスト
1.3.6
JSFによるユーザー・インタフェースの実装
1.3.7
Oracle ADF MODELレイヤーのデータ・バインディング
1.3.8
検証およびエラー処理
1.3.9
セキュリティの追加
1.3.10
Webクライアント・アプリケーションのテストとデバッグ
1.3.11
アプリケーション・アーティファクトのリファクタ
1.3.12
Fusion Webアプリケーションのデプロイ
1.4
チーム作業による生産性の向上
1.4.1
標準の適用
1.4.2
ソース・コントロール・システムの使用
1.5
Oracle ADFの学習
2
ADFサンプル・アプリケーションの概要
2.1
Oracle Fusion Order Demoの概要
2.2
Fusion Order Demoアプリケーションの設定
2.2.1
アプリケーション・リソースのダウンロード方法
2.2.2
Fusion Order Demoアプリケーションのインストール方法
2.2.3
Fusion Order Demoアプリケーションの実行方法
2.3
Fusion Order Demoアプリケーションの考察
2.3.1
匿名での参照
2.3.1.1
製品の詳細の表示
2.3.1.2
製品カタログの参照
2.3.1.3
製品の検索
2.3.2
ログイン・プロセス
2.3.3
注文プロセス
2.3.4
顧客の登録プロセス
第II部 ビジネス・サービスの構築
3
ADF Business Componentsの概説
3.1
ADF Business Componentsの概要
3.1.1
ADF Business Componentsの機能
3.1.2
ADF Business Componentsのコア・オブジェクト
3.2
使い慣れた4GLツールとの比較
3.2.1
Oracle Forms開発者が理解しやすい概念
3.2.1.1
アプリケーション・モジュールとヘッドレスなフォーム・モジュールの類似性
3.2.1.2
エンティティ・オブジェクトとFormsレコード・マネージャの類似性
3.2.1.3
ビュー・オブジェクトとデータ・ブロックの類似性
3.2.2
PeopleTools開発者が理解しやすい概念
3.2.2.1
アプリケーション・モジュールとヘッドレスなコンポーネントの類似性
3.2.2.2
エンティティ・オブジェクトとレコード定義の類似性
3.2.2.3
ビュー・オブジェクトと行セットの類似性
3.2.3
Siebel Tools開発者が理解しやすい概念
3.2.3.1
エンティティ・オブジェクトと表オブジェクトの類似性
3.2.3.2
ビュー・オブジェクトとビジネス・コンポーネントの類似性
3.2.3.3
アプリケーション・モジュールとビジネス・オブジェクトの類似性
3.2.4
ADO.NET開発者が使い慣れている機能
3.2.4.1
アプリケーション・モジュールとデータセットの類似性
3.2.4.2
エンティティ・オブジェクトとデータ・アダプタの類似性
3.2.4.3
ビュー・オブジェクトとデータ表の類似性
3.3
設計時機能の概要
3.3.1
接続、SQLスタイルおよび型マップの選択
3.3.2
ウィザードを使用した新規コンポーネントの作成
3.3.3
ポップアップ・メニューを使用した新規コンポーネントの作成
3.3.4
コンポーネントの概要エディタを使用したコンポーネントの編集
3.3.5
UMLダイアグラムを使用したコンポーネントの視覚化、作成および編集
3.3.6
Business Component Browserを使用したアプリケーション・モジュールのテスト
3.3.7
コンポーネントのリファクタ
3.4
UI対応データ・モデルの概要
3.4.1
汎用性の高いビジネス・サービス・ソリューション
3.4.2
UI対応データ・モデルの一般的なシナリオ
3.4.3
カスタム・コードのUI対応データ・モデルのサポート
3.5
実装アーキテクチャの概要
3.5.1
標準JavaおよびXML
3.5.2
アプリケーション・サーバーまたはデータベースの独立性
3.5.3
Java EEデザイン・パターンのサポート
3.5.4
ソース・コードの配置
3.5.5
パッケージのネーミング規則
3.5.6
オプションのカスタムJavaコードを含むメタデータ
3.5.6.1
XMLのみのコンポーネント例
3.5.6.2
カスタムJavaクラスのあるコンポーネント例
3.5.7
基本データ型
3.5.8
汎用APIと強く型付けされたAPIとの比較
3.5.9
クライアントがアクセス可能なコンポーネントのカスタム・インタフェースのサポート
3.5.9.1
コンポーネントのフレームワーク・クライアント・インタフェース
3.5.9.2
コンポーネントのカスタム・クライアント・インタフェース
3.6
Groovyサポートの概要
4
エンティティ・オブジェクトを使用したビジネス・ドメイン・レイヤーの作成
4.1
エンティティ・オブジェクトの概要
4.2
エンティティ・オブジェクトおよびアソシエーションの作成
4.2.1
既存の表から複数のエンティティ・オブジェクトおよびアソシエーションを作成する方法
4.2.2
エンティティの作成ウィザードで単一のエンティティ・オブジェクトを作成する方法
4.2.3
既存の表からのエンティティ・オブジェクトおよびアソシエーション作成時の処理
4.2.3.1
表に外部キー関係がある場合の処理
4.2.3.2
表に主キーがないときに行われる処理
4.2.4
シノニムまたはビューのエンティティ・オブジェクトの作成時の処理
4.2.5
既存のエンティティ・オブジェクトまたはアソシエーションの編集方法
4.2.6
エンティティ・オブジェクトからのデータベース表の作成方法
4.2.7
データベース表の変更とエンティティを同期化する方法
4.2.7.1
ドロップされた列に関連付けられた属性の削除
4.2.7.2
基礎となる表でのデータ型の変更処理
4.2.8
特定の時点に関するデータを格納する方法
4.2.9
有効日が指定されたエンティティ・オブジェクトの作成時の処理
4.2.10
表からのエンティティの作成について
4.3
アソシエーションの作成および構成
4.3.1
アソシエーションの作成方法
4.3.2
アソシエーション作成時の処理
4.3.3
エンティティ・アソシエーションのアクセッサ名の変更方法
4.3.4
アソシエーションの名前変更および別のパッケージへの移動方法
4.3.5
アソシエーションでのカスタム・ビュー・オブジェクトの使用について
4.3.6
コンポジット・アソシエーションについて
4.4
ビジネス・レイヤーのエンティティ・ダイアグラムの作成
4.4.1
エンティティ・ダイアグラムの作成方法
4.4.2
エンティティ・ダイアグラム作成時の処理
4.4.3
XMLコンポーネント・ディスクリプタについて
4.4.4
コンポーネント名の変更について
4.5
プロパティ・セットの定義
4.5.1
プロパティ・セットの定義方法
4.5.2
プロパティ・セットの適用方法
4.6
エンティティ・オブジェクトの属性のコントロール・ヒントの定義
4.6.1
属性のコントロール・ヒントの追加方法
4.6.2
属性のコントロール・ヒント追加時の処理
4.7
リソース・バンドルの使用
4.7.1
メッセージ・バンドル・オプションの設定方法
4.7.2
複数のリソース・バンドルの使用方法
4.7.3
日付フォーマットの国際化方法
4.8
ビジネス・ロジック・グループの定義
4.8.1
ビジネス・ロジック・グループの作成方法
4.8.2
ビジネス・ロジック・ユニットの作成方法
4.8.3
ビジネス・ロジック・ユニットの属性のオーバーライド方法
4.8.4
ビジネス・ロジック・グループの作成時の処理
4.8.5
実行時の処理: ビジネス・ロジック・グループの呼出し
4.9
宣言的な実行時動作の構成
4.9.1
宣言的な実行時動作の構成方法
4.9.2
宣言的な実行時動作の構成時の処理
4.10
属性プロパティの設定
4.10.1
エンティティ・オブジェクト属性のデータベースおよびJavaデータ型を設定する方法
4.10.2
データ型の長さ、精度およびスケールの指定方法
4.10.3
属性の更新可能性の制御方法
4.10.4
属性を必須化する方法
4.10.5
エンティティの主キーの定義方法
4.10.6
静的なデフォルト値を定義する方法
4.10.7
Groovy式を使用してデフォルト値を定義する方法
4.10.8
Groovy式を使用したデフォルト値の作成時の処理
4.10.9
トリガーによって割り当てられた値を同期化する方法
4.10.10
トリガーによってデータベース順序から割り当てられた主キー値の取得方法
4.10.11
同時更新によるデータの消失を防ぐ方法
4.10.12
履歴列を使用して作成および変更した日付を追跡する方法
4.10.13
コンポジット動作の構成方法
4.10.13.1
新しく構成されるエンティティでの親のない行の保護
4.10.13.2
データベースに保存される変更の順序付け
4.10.13.3
Refresh-On-Insert主キーからの構成される側の詳細エンティティのカスケード更新
4.10.13.4
カスケード削除のサポート
4.10.13.5
主キーの変更時の外部キー属性のカスケード更新
4.10.13.6
コンポジット親エンティティのロック
4.10.13.7
構成する側の親の履歴属性の更新
4.10.14
エンティティ・オブジェクト継承階層の識別子属性の設定方法
4.10.15
代替キー値の定義方法
4.10.16
代替キー値定義時の処理
4.10.17
代替キー値について
4.11
エンティティ・オブジェクトおよびアソシエーションのプログラム的操作
4.11.1
主キーによるエンティティ・オブジェクトの検索方法
4.11.2
アクセッサ属性を使用して関連付けられたエンティティへのアクセス方法
4.11.3
既存のエンティティ行の更新または削除方法
4.11.4
新しいエンティティ行の作成方法
4.11.5
Oracle順序を使用した主キー値の割当て
4.12
エンティティ・オブジェクトのカスタムJavaクラスの生成
4.12.1
カスタム・クラスの生成方法
4.12.2
カスタム・クラス生成時の処理
4.12.3
エンティティ属性アクセッサの生成時の処理
4.12.4
カスタムJavaファイルの操作方法
4.12.5
カスタムJavaクラスについて
4.12.5.1
エンティティ・オブジェクトのフレームワーク・ベース・クラスについて
4.12.5.2
カスタム・コンポーネント・ファイルに安全に追加できるコード
4.12.5.3
デフォルトのJava生成設定の構成
4.12.5.4
属性索引およびInvokeAccessor生成コード
4.12.6
カスタム・エンティティ・クラスを使用した比較のプログラム的な例
4.13
エンティティ・オブジェクトへの一時属性および計算属性の追加
4.13.1
一時属性の追加方法
4.13.2
一時属性の追加時の処理
4.13.3
Groovy式に準拠した一時属性の作成方法
4.13.4
Groovy式に準拠した一時属性の作成時の処理
4.13.5
エンティティ・クラスへの計算実行用Javaコードの追加方法
5
ビュー・オブジェクトを使用したSQL問合せの定義
5.1
ビュー・オブジェクトの概要
5.1.1
ビュー・オブジェクトの概念の概要
5.1.2
エンティティ・ベースのビュー・オブジェクト固有の実行時機能
5.2
単一のデータベース表からのビュー・オブジェクト行の移入
5.2.1
エンティティ・ベースのビュー・オブジェクトの作成方法
5.2.1.1
単一表からのエンティティ・ベースのビュー・オブジェクトの作成
5.2.1.2
エンティティ・オブジェクトのすべての属性を持つビュー・オブジェクトの作成
5.2.2
エンティティ・ベースのビュー・オブジェクトの作成時の処理
5.2.3
エキスパート・モードの読取り専用ビュー・オブジェクトの作成方法
5.2.4
読取り専用ビュー・オブジェクトの作成時の処理
5.2.5
ビュー・オブジェクトの編集方法
5.2.5.1
基礎となるエンティティ・オブジェクト属性の継承プロパティのオーバーライド
5.2.5.2
ビュー・オブジェクト属性の長さ、精度およびスケールの制御
5.2.6
ビジネス・コンポーネント・ダイアグラムでのビュー・オブジェクトの表示方法
5.3
静的データを使用したビュー・オブジェクトの移入
5.3.1
入力したデータを使用して静的ビュー・オブジェクトを作成する方法
5.3.2
インポートしたデータを使用して静的ビュー・オブジェクトを作成する方法
5.3.3
静的リスト・ビュー・オブジェクトの作成時の処理
5.3.4
静的リスト・ビュー・オブジェクトの編集
5.3.5
静的リスト・ビュー・オブジェクトについて
5.4
有効日付範囲を使用したビュー・オブジェクト行の制限
5.4.1
有効日が指定されたビュー・オブジェクトの作成方法
5.4.2
有効日が指定されたビュー・オブジェクトを使用した新規ビュー行の作成方法
5.4.3
有効日が指定されたビュー行の更新方法
5.4.4
有効日が指定されたビュー行の削除方法
5.4.5
有効日が指定されたビュー・オブジェクトの作成時の処理
5.4.6
有効日が指定されたビュー・オブジェクトとビュー・リンクについて
5.5
結合問合せ結果での複数表の使用
5.5.1
エンティティ・ベースのビュー・オブジェクトに対する結合の作成方法
5.5.2
参照エンティティ・オブジェクトの慣用名からの追加属性の選択方法
5.5.3
参照エンティティ・オブジェクトの慣用名からの不要なキー属性の削除方法
5.5.4
参照エンティティ・オブジェクトの慣用名の主キー属性を非表示にする方法
5.5.5
必要に応じたデフォルトの結合句の外部結合への変更
5.5.6
ビュー・オブジェクトのエンティティを参照するときに行われる処理
5.5.7
読取り専用ビュー・オブジェクトに対する結合の作成方法
5.5.8
結合ビューのテスト方法
5.5.9
クエリー・ビルダーで読取り専用ビュー・オブジェクトを処理する方法
5.5.10
結合ビュー・オブジェクトについて
5.6
マスター/ディテール階層における複数表の使用
5.6.1
読取り専用ビュー・オブジェクトに対するマスター/ディテール階層の作成方法
5.6.2
エンティティ・ベースのビュー・オブジェクトに対するマスター/ディテール階層の作成方法
5.6.3
ビュー・リンクを使用したマスター/ディテール階層の作成時の処理
5.6.4
データ・モデルでアクティブなマスター/ディテール調整を有効化する方法
5.6.5
マスター/ディテールの調整のテスト方法
5.6.6
ビュー・リンク・アクセッサを使用したディテール・コレクションのアクセス方法
5.6.6.1
名前による行の属性へのアクセス
5.6.6.2
ビュー・リンク・アクセッサを使用したディテール・コレクションへのプログラムによるアクセス
5.7
宣言SQLモードでのビュー・オブジェクトの使用
5.7.1
宣言SQLモードでSQLに依存しないビュー・オブジェクトを作成する方法
5.7.2
表結合が適用された場合に宣言SQLベースのビュー・オブジェクトをフィルタリングする方法
5.7.3
宣言SQLモードでマスター/ディテール関連のビュー・オブジェクトをフィルタリングする方法
5.7.4
宣言SQLモードのビュー・オブジェクトに対する属性問合せを強制実行する方法
5.7.5
宣言SQLモードでビュー・オブジェクトを作成するときに行われる処理
5.7.6
実行時に行われる処理
5.7.7
宣言SQLモードのデフォルトのオーバーライドについて
5.7.8
宣言SQLモードでのビュー・オブジェクトのプログラムによる処理について
5.8
エキスパート・モードでのビュー・オブジェクトの使用
5.8.1
エキスパート・モードでSQL文をカスタマイズする方法
5.8.2
エキスパート・モードで属性名を指定する方法
5.8.3
エキスパート・モードを有効にしたときに行われる処理
5.8.4
エキスパート・モードについて
5.8.4.1
エキスパート・モードでの属性マッピング支援の制限
5.8.4.2
エキスパート・モードでのカスタム編集のドロップ
5.8.4.3
エキスパート・モードでは無視されるSQL式の変更
5.8.4.4
エキスパート・モードによって戻されるエンティティ属性を変更するSQL計算のエラー
5.8.4.5
エキスパート・モードでのSQL文の書式の保持
5.8.4.6
インライン・ビューとしてラップされるエキスパート・モードの問合せ
5.8.4.7
実行時のインライン・ビュー・ラッピングの制限
5.8.4.8
エキスパート・モードの変更によって影響を受ける可能性のある依存オブジェクト
5.9
バインド変数の使用
5.9.1
ビュー・オブジェクト定義にバインド変数を追加する方法
5.9.2
名前付きバインド変数の追加時の処理
5.9.3
名前付きバインド変数のテスト方法
5.9.4
実行時に名前付きバインド変数を含むWHERE句を追加する方法
5.9.5
実行時に既存バインド変数値を設定する方法
5.9.6
実行時に行われる処理
5.9.7
名前付きバインド変数について
5.9.7.1
バインド変数のクリアに関するエラー
5.9.7.2
ヘルパー・メソッドでの名前付きバインド変数の削除
5.9.7.3
バインド変数の命名に関連するエラー
5.9.7.4
バインド変数のNULのデフォルト値
5.10
名前付きビュー基準の処理
5.10.1
名前付きビュー基準を宣言的に作成する方法
5.10.2
ビュー基準にユーザー・インタフェース・ヒントを設定する方法
5.10.3
Business Component Browserを使用したビュー基準のテスト方法
5.10.4
プログラムによるビュー基準の作成方法
5.10.5
実行時に行われる処理
5.10.6
ビュー基準APIについて
5.10.6.1
ビュー基準での属性名の参照
5.10.6.2
ビュー基準でのバインド変数の参照
5.10.6.3
複数ビュー基準行を使用した複合検索条件の変更
5.10.6.4
属性値がNULL値である行の検索
5.10.6.5
大/小文字を区別しない検索
5.10.6.6
有効なビュー基準のクリア
5.10.7
Query-By-Example基準について
5.11
ビュー・オブジェクト属性の値リスト(LOV)での作業
5.11.1
単一のLOVが有効なビュー・オブジェクトの属性を定義する方法
5.11.2
LOVが有効なビュー・オブジェクトの属性に対してカスケード・リストを定義する方法
5.11.3
ビュー・オブジェクトのLOV有効属性にユーザー・インタフェース・ヒントを設定する方法
5.11.4
Business Component Browserを使用したLOVが有効な属性のテスト方法
5.11.5
ビュー・オブジェクト属性のLOVの定義時の処理
5.11.6
実行時に行われる処理: LOVでリスト・データソースを問い合せる場合
5.11.7
リストについて
5.11.7.1
親ビュー・オブジェクト属性からのAttributeDefプロパティの継承
5.11.7.2
バリデータを使用した属性値の検証
5.12
ビュー・オブジェクトの属性のコントロール・ヒントの定義
5.12.1
属性のコントロール・ヒントの追加方法
5.12.2
属性のコントロール・ヒント追加時の処理
5.12.3
リソース・バンドルについて
5.13
ビュー・オブジェクトへの計算属性および一時属性の追加
5.13.1
SQL計算属性の追加方法
5.13.2
SQL計算属性を追加するときに行われる処理
5.13.3
一時属性の追加方法
5.13.4
一時属性の追加時の処理
5.13.5
ビュー行クラスへの計算実行用Javaコードの追加
5.13.6
一時属性について
6
ビュー・オブジェクト問合せ結果の操作
6.1
ビュー・オブジェクトの実行時動作の概要
6.2
ビュー・インスタンスをテストするためのアプリケーション・モジュールの作成
6.3
Business Component Browserを使用したビュー・オブジェクト・インスタンスのテスト
6.3.1
Business Component Browserの実行方法
6.3.2
エンティティ・ベースのビュー・オブジェクトの対話的テスト方法
6.3.3
Business Component Browser使用時の処理
6.3.4
Business Component Browserでのエンド・ユーザーによる対話のシミュレーション方法
6.3.4.1
マスター/ディテール調整のテスト
6.3.4.2
UIコントロール・ヒントのテスト
6.3.4.3
ビジネス・ドメイン・レイヤーの検証のテスト
6.3.4.4
代替言語のメッセージ・バンドルおよびコントロール・ヒントのテスト
6.3.4.5
エンティティ・オブジェクトの慣用名を参照するビュー・オブジェクトのテスト
6.3.4.6
行の作成およびデフォルト値の生成のテスト
6.3.4.7
新しいディテール行の外部キーが正しいかどうかのテスト
6.3.5
Business Component Browserでのマルチユーザー・シナリオのテスト方法
6.3.6
ブラウザを実行する前の構成オプションのカスタマイズ方法
6.3.7
ADF Business Componentsデバッグ診断を有効化する方法
6.3.8
ビュー・オブジェクトとエンティティ・オブジェクトが連携した場合の実行時の処理
6.3.8.1
ビュー・オブジェクトによる問合せ実行時に発生する処理
6.3.8.2
ビュー行属性の変更時の処理
6.3.8.3
外部キー属性の変更時の処理
6.3.8.4
トランザクションのコミット時の処理
6.3.8.5
ビュー・オブジェクトでのデータの再問合せ時の処理
6.3.9
ビュー・オブジェクトの実行時パフォーマンスの最適化について
6.4
ビュー・オブジェクト・インスタンスのプログラムによるテスト
6.4.1
ビュー・オブジェクトのデフォルト行セットを使用した操作のViewObjectインタフェース・メソッド
6.4.1.1
ビュー行またはエンティティ行におけるキー・オブジェクトの役割
6.4.1.2
エンティティ・キャッシュがトランザクションで果す役割
6.4.2
コマンドラインJavaテスト・クライアントの作成方法
6.4.3
テスト・クライアント・プログラム実行時の処理
6.4.4
テスト・クライアントの実行について
6.4.5
行セットにおける行数計算の方法
6.4.6
ビュー・リンク・アクセッサを使用したディテール・コレクションのアクセス方法
6.4.7
マスター/ディテール/ディテール階層の反復方法
6.4.8
行の検索および外部キー値の更新の方法
6.4.9
新しいオーダーの作成方法
6.4.10
行を識別する行キーの取得方法
7
検証とビジネス・ルールの宣言的な定義
7.1
宣言的検証の概要
7.1.1
ビジネス・レイヤー検証またはモデル・レイヤー検証を使用する場合
7.2
検証サイクルの理解
7.2.1
エンティティ・オブジェクト検証規則のタイプ
7.2.1.1
属性レベルの検証規則
7.2.1.2
エンティティ・レベルの検証規則
7.2.2
コミット処理と検証の理解
7.2.3
検証順序に対するコンポジットの影響
7.2.4
無限検証サイクルの回避
7.2.5
検証が失敗したときに行われる処理
7.2.6
エンティティ・オブジェクト行の状態の理解
7.3
エンティティ・オブジェクトおよび属性への検証規則の追加
7.3.1
エンティティまたは属性への検証規則の追加方法
7.3.2
エンティティまたは属性の検証規則の表示および編集方法
7.3.3
検証規則の追加時の処理
7.3.4
エンティティおよび属性の検証規則について
7.4
組込みの宣言的な検証規則の使用
7.4.1
キー値の一意性を確認する方法
7.4.2
Unique Key Validatorの使用時の処理
7.4.3
比較に基づく検証方法
7.4.4
比較に基づく検証時の処理
7.4.5
値リストを使用した検証方法
7.4.6
リスト値を使用した検証時の処理
7.4.7
List Validatorについて
7.4.8
値が特定の範囲内にあることを確認する方法
7.4.9
Range Validatorの使用時の処理
7.4.10
バイトまたは文字数に対する検証方法
7.4.11
バイトまたは文字数に対する検証時の処理
7.4.12
正規表現を使用した検証方法
7.4.13
正規表現を使用した検証時の処理
7.4.14
Average、Count、またはSumを使用したコレクションの検証方法
7.4.15
コレクション検証の使用時の処理
7.4.16
キーの存在の判別方法
7.4.17
Key Exists Validatorの使用時の処理
7.4.18
宣言的バリデータとビュー・アクセッサについて
7.5
検証とビジネス・ルールへのGroovy式の使用
7.5.1
Groovy検証式でのエンティティ・オブジェクト・メソッドの参照方法
7.5.2
true/false式を使用した検証方法
7.5.3
Groovy式の追加時の処理
7.6
検証実行のトリガー
7.6.1
検証を起動する属性の指定方法
7.6.2
検証の事前条件の設定方法
7.6.3
トランザクション・レベルの検証の設定方法
7.6.4
検証実行の順序について
7.7
検証エラー・メッセージの作成
7.7.1
検証エラー・メッセージの作成方法
7.7.2
検証メッセージのローカライズ方法
7.7.3
Groovyを使用して条件付きでエラー・メッセージを呼び出す方法
7.7.4
エラー・メッセージにGroovy式を埋め込む方法
7.8
検証例外の重大度レベルの設定
7.9
SQLでのバルク検証
8
プログラムによる検証とビジネス・ルールの実装
8.1
プログラム的なビジネス・ルールの概要
8.2
Method Validatorの使用
8.2.1
属性レベルのMethod Validatorの作成方法
8.2.2
属性レベルのMethod Validatorを作成するときに行われる処理
8.2.3
エンティティ・レベルのMethod Validatorの作成方法
8.2.4
エンティティ・レベルのMethod Validatorを作成するときに行われる処理
8.2.5
検証規則エラー・メッセージの翻訳について
8.3
プログラム的な導出属性値の割当て
8.3.1
新しい行に対する作成時のデフォルト値の指定方法
8.3.1.1
create()メソッドとinitDefaultExpressionAttributes()メソッドのいずれかの選択
8.3.1.2
データベース順序からの属性値のデフォルト設定
8.3.2
保存前の導出値の割当て方法
8.3.3
属性値が設定されている場合の、導出値の割当て方法
8.4
refreshメソッドを使用した、エンティティに対する保留中の変更の取消し
8.4.1
リフレッシュ中の新規行の動作の制御方法
8.4.2
構成される側の子エンティティ行へのリフレッシュのカスケード方法
8.5
検証でのビュー・オブジェクトの使用
8.5.1
ビュー・オブジェクトに対する検証用ビュー・アクセッサの使用方法
8.5.2
指定された型のすべてのエンティティに関連する条件の検証方法
8.6
アソシエーション・アクセッサを使用した、関連するエンティティ行へのアクセス
8.6.1
関連するエンティティ行へのアクセス方法
8.6.2
関連するエンティティ行RowSetsへのアクセス方法
8.7
認証されたユーザーに関する情報の参照
8.8
元の属性値へのアクセス
8.9
現在のユーザー・セッションに関する情報の格納
8.9.1
現在のユーザー・セッションに関する情報の格納方法
8.10
現在の日時へのアクセス
8.11
正常に完了したコミットに関する通知の送信
8.12
エンティティ行削除の条件付き禁止
8.13
属性に対する条件付きの更新可能性の判断
9
アプリケーション・モジュールによるビジネス・サービスの実装
9.1
アプリケーション・モジュールの概要
9.2
アプリケーション・モジュールの作成と変更
9.2.1
アプリケーション・モジュールの作成方法
9.2.2
アプリケーション・モジュール作成時の処理
9.2.3
アプリケーション・モジュールへのビュー・オブジェクトの追加方法
9.2.4
アプリケーション・モジュールへのビュー・オブジェクト追加時の処理
9.2.5
既存のアプリケーション・モジュールの編集方法
9.2.6
ページ作成を開始する前のデータ・コントロール名の変更方法
9.2.7
アプリケーション・モジュールの粒度について
9.2.8
ビュー・オブジェクト・コンポーネントとビュー・オブジェクト・インスタンスについて
9.3
アプリケーション・モジュールのデータベース接続の構成
9.3.1
JDBC URL接続タイプの使用方法
9.3.2
JDBCデータソース接続タイプの使用方法
9.3.3
アプリケーション・モジュールのランタイム構成の変更方法
9.3.4
プロジェクトのデータベース接続の変更方法
9.3.5
アプリケーション・モジュールの接続について
9.4
ネストされたアプリケーション・モジュールの定義
9.4.1
ネストされたアプリケーション・モジュールの定義方法
9.4.2
ルート・アプリケーション・モジュールおよびネストされたアプリケーション・モジュールの慣用名について
9.5
ビジネス・サービス用アプリケーション・モジュールのダイアグラムの作成
9.5.1
アプリケーション・モジュールのダイアグラムの作成方法
9.5.2
アプリケーション・モジュールのダイアグラム作成時の処理
9.5.3
アプリケーション・モジュールのダイアグラムについて
9.5.3.1
ダイアグラムによるアプリケーション・モジュールの編集
9.5.3.2
表示オプションの制御
9.5.3.3
メソッド名のフィルタ処理
9.5.3.4
関連するオブジェクトおよび実装ファイルの表示
9.5.3.5
アプリケーション・モジュールのダイアグラムの公開
9.5.3.6
ダイアグラムからのアプリケーション・モジュールのテスト
9.6
複数ページの作業ユニットのサポート
9.6.1
Business Component Browserでの状態管理のシミュレーション方法
9.6.2
アプリケーションでのアプリケーション・モジュール・プーリングおよび状態管理の使用時の処理
9.7
サービス・メソッドによるアプリケーション・モジュールのカスタマイズ
9.7.1
アプリケーション・モジュールのカスタム・クラスの生成方法
9.7.2
アプリケーション・モジュールのカスタム・クラス生成時の処理
9.7.3
デフォルトのコード生成について
9.7.4
アプリケーション・モジュールへのカスタム・サービス・メソッドの追加方法
9.7.5
static mainメソッドを使用したカスタム・アプリケーション・モジュールのテスト方法
9.8
UIクライアントへのカスタム・サービス・メソッドの公開
9.8.1
アプリケーション・モジュールのクライアント・インタフェースでのカスタム・メソッドの公開方法
9.8.2
カスタム・サービス・メソッド公開時の処理
9.8.3
ビュー・オブジェクトおよびビュー行のクライアント・インタフェースの生成方法
9.8.4
クライアント・インタフェースのメソッド・シグネチャについて
9.8.5
データ・モデルからの情報の引渡しについて
9.9
Business Component Browserによるアプリケーション・モジュールのデバッグ
9.10
アプリケーション・モジュールのクライアント・インタフェースのプログラム的操作
9.10.1
アプリケーション・モジュールのクライアント・インタフェースのプログラム的な操作方法
9.10.2
アプリケーション・モジュールのクライアント・インタフェースの操作時の処理
9.10.3
Fusion Webアプリケーションでのアプリケーション・モジュール・クライアント・インタフェースへのアクセス方法
9.11
組込みフレームワーク・メソッドの上書き
9.11.1
組込みフレームワーク・メソッドの上書き方法
9.11.2
組込みフレームワーク・メソッドを上書きした場合の処理
9.11.3
prepareSession()を上書きして新規ユーザー・セッション用のアプリケーション・モジュールを設定する方法
10
アプリケーション・モジュール・ビュー・インスタンスの共有
10.1
共有アプリケーション・モジュールの概要
10.2
アプリケーション・モジュール・インスタンスの共有
10.2.1
共有アプリケーション・モジュール・インスタンスの作成方法
10.2.2
共有アプリケーション・モジュール定義時の処理
10.2.3
共有アプリケーション・モジュール・インスタンスについて
10.2.3.1
共有アプリケーション・モジュールの設計時スコープ
10.2.3.2
共有アプリケーション・モジュールのビュー・インスタンスの設計時スコープ
10.3
ベース・ビュー・オブジェクトを参照表で使用するための定義
10.3.1
参照表のベース・ビュー・オブジェクト定義の作成方法
10.3.2
ベース・ビュー・オブジェクトの作成時の処理
10.3.3
ビュー基準を使用した検索ビュー・オブジェクトのWHERE句の定義方法
10.3.4
エディタでのビュー基準の作成時の処理
10.3.5
ビュー・インスタンスにより検索データがアクセスされた場合の実行時の処理
10.4
共有サービスのビュー・インスタンスへのアクセス
10.4.1
エンティティ・オブジェクトまたはビュー・オブジェクトのビュー・アクセッサの作成方法
10.4.2
ビュー・アクセッサに対する検証方法
10.4.3
ビュー・アクセッサに対する検証時の処理
10.4.4
参照表を基にしてLOVを作成する方法
10.4.5
ビュー・オブジェクト属性のLOVの定義時の処理
10.4.6
ビュー・アクセッサのビュー・オブジェクトを自動的にリフレッシュする方法
10.4.7
実行時に行われる処理
10.4.8
リストについて
10.4.8.1
親ビュー・オブジェクト属性からのAttributeDefプロパティの継承
10.4.8.2
バリデータを使用した属性値の検証
10.5
共有アプリケーション・モジュールでのビュー・オブジェクト・インスタンスのテスト
10.5.1
Business Component Browserを使用したベース・ビュー・オブジェクトのテスト方法
10.5.2
Business Component Browserを使用したLOVが有効な属性のテスト方法
10.5.3
Business Component Browser使用時の処理
10.5.4
別のサービスにより共有アプリケーション・モジュール・キャッシュがアクセスされた場合、実行時に行われる処理
11
Fusion WebアプリケーションでのOracle ADF Modelの使用
11.1
ADFデータ・バインディングの概要
11.2
Oracle ADFデータ・コントロールを使用したアプリケーション・モジュールの公開
11.2.1
「データ・コントロール」パネルでのアプリケーション・モジュールのデータ・コントロールの表示
11.2.1.1
「データ・コントロール」パネルでのデータ・モデルおよびサービス・メソッドの表示
11.2.1.2
「データ・コントロール」パネルでのトランザクション制御操作の表示
11.2.1.3
「データ・コントロール」パネルでのビュー・オブジェクトの表示
11.2.1.4
「データ・コントロール」パネルでのネストされたアプリケーション・モジュールの表示
11.2.2
「データ・コントロール」パネルの表示方法
11.2.3
データ・コントロールのリフレッシュ方法
11.2.4
別のプロジェクトで使用するデータ・コントロールのパッケージ化
11.3
「データ・コントロール」パネルの使用
11.3.1
「データ・コントロール」パネルの使用方法
11.3.2
「データ・コントロール」パネルの使用時の処理
11.3.3
実行時に行われる処理: バインディング・コンテキストの動作方法
11.4
DataBindings.cpxファイルでの作業
11.4.1
JDeveloperによるDataBindings.cpxファイルの作成方法
11.4.2
DataBindings.cpxファイルの作成時の処理
11.5
ADFバインディング・フィルタの構成
11.5.1
ADFバインディング・フィルタの構成方法
11.5.2
ADFバインディング・フィルタを構成した場合の処理
11.5.3
実行時に行われる処理: ADFバインディング・フィルタの動作方法
11.6
ページ定義ファイルでの作業
11.6.1
ページ定義ファイルの作成方法
11.6.2
ページ定義ファイルの作成時の処理
11.6.2.1
Bindingsバインディング・オブジェクト
11.6.2.2
Executablesバインディング・オブジェクト
11.7
ADFデータ・バインディングEL式の作成
11.7.1
ADFデータ・バインディングEL式の作成方法
11.7.1.1
プロパティ・インスペクタから式ビルダーを開く手順
11.7.1.2
式ビルダーの使用
11.7.2
ADFバインディング・プロパティについて
11.8
最初にシンプルUIを開発する機能の使用
11.8.1
ADF Modelデータ・バインディングの既存のUIコンポーネントへの適用方法
11.8.2
ADF Modelデータ・バインディングのUIコンポーネントへの適用時の処理
12
WebサービスのFusion Webアプリケーションへの統合
12.1
Fusion WebアプリケーションのWebサービスの概要
12.2
アプリケーション・モジュールからのWebサービスのコール
12.2.1
外部サービスのプログラム的なコール方法
12.2.1.1
サービスにプログラム的にアクセスするためのWebサービス・プロキシ・クラスの作成
12.2.1.2
サービスを起動するためのWebサービス・プロキシ・テンプレートのコール
12.2.1.3
アプリケーション・モジュールでプロキシ・クラスを使用したWebサービス・メソッドのコール
12.2.2
Webサービス・プロキシの作成時の処理
12.2.3
実行時に行われる処理: Webサービス・プロキシ・クラスを使用してWebサービスをコールした場合
12.2.4
Webサービス・プロキシについて
12.2.4.1
try/catchブロックによるWebサービス例外の処理
12.2.4.2
アプリケーションモジュールとWebサービスでのトランザクションの分離
12.2.4.3
ブラウザ・プロキシ情報の設定
12.2.4.4
Webサービス・プロキシ・クラスを使用したアプリケーション・モジュールの起動
12.3
Webサービス・データ・コントロールの作成
12.3.1
Webサービス・データ・コントロールの作成方法
12.3.2
Webサービス・データ・コントロールのエンドポイントの調整方法
12.3.3
Webサービス・データ・コントロールについて
12.4
Webサービス・データ・コントロールのセキュリティ保護
12.4.1
WS-Security仕様
12.4.2
キーストアの作成および使用方法
12.4.2.1
キーストアの作成
12.4.2.2
証明書のリクエスト
12.4.2.3
公開鍵証明書のエクスポート
12.4.3
Webサービス・データ・コントロールのセキュリティの定義方法
12.4.3.1
認証の設定
12.4.3.2
デジタル署名の設定
12.4.3.3
暗号化と復号化の設定
12.4.3.4
キーストアの使用
第III部 ADFタスク・フローの作成
13
ADFタスク・フローの概説
13.1
ADFタスク・フローの概要
13.1.1
タスク・フローの利点
13.1.2
タスク・フロー・タイプ
13.1.2.1
ADFバインドなしタスク・フロー
13.1.2.2
ADFバインド・タスク・フロー
13.1.3
制御フロー
13.2
タスク・フローの作成
13.2.1
ADFタスク・フローの作成方法
13.2.2
ADFタスク・フローにアクティビティを追加する方法
13.2.3
制御フローの追加方法
13.2.4
ワイルドカード制御フロー・ルールの追加方法
13.2.5
制御フロー・ルールの作成時の処理
13.2.6
実行時に行われる処理
13.2.7
ADFタスク・フロー作成時の処理
13.2.8
実行時に行われる処理: ADFタスク・フローの使用
13.2.9
マネージドBeanについて
13.2.10
メモリー・スコープについて
13.2.10.1
ビュー・スコープ
13.2.10.2
バッキングBeanスコープ
13.3
バインド・タスク・フローのページへの追加
13.4
ADFバインド・タスク・フローでのデフォルト・アクティビティの指定
13.5
ADFタスク・フローの実行
13.5.1
ページを含むタスク・フロー定義の実行方法
13.5.2
ページ・フラグメントを使用するタスク・フロー定義の実行方法
13.5.3
パラメータを含むタスク・フロー定義の実行方法
13.5.4
JSFページの実行方法
13.5.5
ADFバインドなしタスク・フローの実行方法
13.5.6
プロジェクトの実行構成を設定する方法
13.6
ADFタスク・フローへのプロジェクト・プロパティの設定
13.7
新規ADFタスク・フローおよびテンプレート作成のためのリファクタ
13.7.1
選択されたアクティビティからADFバインド・タスク・フローを作成する方法
13.7.2
JSFページからのタスク・フローの作成方法
13.7.3
ADFバインド・タスク・フローの変換方法
13.8
タスク・フローの制約
14
タスク・フロー・アクティビティの使用
14.1
アクティビティ・タイプの概要
14.2
ビュー・アクティビティの使用
14.2.1
ビュー・アクティビティの追加
14.2.2
ビュー・アクティビティ間の遷移
14.2.2.1
ビュー・アクティビティへの遷移方法
14.2.2.2
アクティビティ間の遷移時の処理
14.2.3
ビュー・アクティビティのブックマーク
14.2.3.1
ブックマーク可能なビュー・アクティビティの作成方法
14.2.3.2
HTTPリダイレクトの指定方法
14.2.3.3
ブックマーク可能としてのビューの指定時の処理
14.3
URLビュー・アクティビティの使用
14.3.1
ポートレット内で使用するURLの作成
14.4
ルーター・アクティビティの使用
14.5
メソッド・コール・アクティビティの使用
14.5.1
メソッド・コール・アクティビティの追加方法
14.5.2
メソッド・パラメータおよび戻り値の指定方法
14.5.3
メソッド・コール・アクティビティ追加時の処理
14.6
タスク・フロー・コール・アクティビティの使用
14.6.1
ADFバインド・タスク・フローのコール方法
14.6.2
タスク・フロー・コール・アクティビティへの入力パラメータの指定方法
14.6.3
別のWebアプリケーションにあるADFバインド・タスク・フローのコール方法
14.6.4
URLを使用したバインド・タスク・フローのコール方法
14.6.5
パラメータconverterの指定
14.6.6
Before ListenerとAfter Listenerの指定方法
14.6.7
タスク・フロー・コール・アクティビティ追加時の処理
14.6.8
実行時に行われる処理: タスク・フロー・コール・アクティビティの使用
14.7
タスク・フロー・リターン・アクティビティの使用
14.8
セーブポイント・リストア・アクティビティの使用
14.9
親アクション・アクティビティの使用
15
タスク・フローのパラメータの使用
15.1
ビュー・アクティビティへのパラメータ渡し
15.2
ADFバインド・タスク・フローへのパラメータ渡し
15.3
データ・コントロール・インスタンスの共有
15.3.1
トランザクションの管理について
15.4
戻り値の指定
15.5
ELバインディング式の指定
16
ADFタスク・フローのリージョンとしての使用
16.1
ADFリージョンの概要
16.1.1
ADFリージョンの作成方法
16.1.2
タスク・フロー・バインディングの宣言的な追加方法
16.1.3
ADFリージョンにパラメータを指定する方法
16.1.4
ADFリージョン作成時の処理
16.1.5
実行時に行われる処理: ADFリージョンの実行
16.1.6
ADFリージョンの親タスク・フローのナビゲーションをトリガーする方法
16.1.7
ADFリージョンをリフレッシュする方法について
16.1.8
ADFリージョンから戻る方法について
16.1.9
ページ・フラグメントについて
16.1.10
ビュー・ポートについて
16.1.11
ADFリージョンの保護について
16.2
ADF動的リージョンの作成
16.2.1
ADF動的リージョンの作成方法
16.2.2
パラメータ値のオーバーライド方法
16.3
動的リージョン・リンクの作成
17
複雑なタスク・フローの作成
17.1
イニシャライザとファイナライザの使用
17.2
トランザクションの管理
17.2.1
ADFバインド・タスク・フローでトランザクションを有効化する方法
17.2.2
Transactionオプション指定時の処理
17.3
ADFバインド・タスク・フローの再開
17.3.1
再開動作の設定方法
17.3.2
結果依存オプションの設定方法
17.3.3
タスク・フロー再開時のマネージドBeanの値について
17.4
例外処理
17.4.1
トランザクション中の例外処理
17.4.2
例外ハンドラ指定時の処理
17.4.3
検証エラーの処理について
17.5
後で使用するための保存
17.5.1
後で使用するための保存の機能を追加する方法
17.5.2
セーブポイントのリストア方法
17.5.3
セーブポイント・リストア・ファイナライザの使用方法
17.5.4
後で使用するための暗黙的な保存を有効化する方法
17.5.5
有効時間の設定方法
17.5.6
後で使用するための保存のBC4Jとの併用について
17.6
トレインの作成
17.6.1
トレインとしてのADFバインド・タスク・フロー
17.6.2
トレインの順序
17.6.3
トレインの作成方法
17.6.4
アクティビティのグループ化について
17.6.5
子タスク・フローでのアクティビティのグループ化について
17.6.6
子トレインの使用について
17.6.7
ブランチ化について
17.7
ADFバインド・タスク・フローのモーダル・ダイアログとしての実行
17.7.1
モーダル・ダイアログ内でのADFバインド・タスク・フローの実行方法
17.7.2
戻り値を渡す方法
17.8
ADFタスク・フロー・テンプレートの作成
17.8.1
ADFタスク・フロー・テンプレートのコピーと参照
17.8.2
別のタスク・フローからのADFタスク・フロー・テンプレートの作成
17.8.3
ADFタスク・フロー・テンプレートの使用方法
17.8.4
ADFタスク・フロー・テンプレートの作成方法
17.8.5
ADFタスク・フロー・テンプレート作成時の処理
17.8.6
バインディングを使用するADFタスク・フロー・テンプレートについて
17.9
ページ階層の作成
17.9.1
XMLメニュー・モデル
17.9.2
ページ階層の作成方法
17.10
ブートストラップ構成ファイルの指定方法
17.11
adf-config.xmlファイルを使用したADFコントローラの構成
17.11.1
後で使用するための保存の設定の指定
17.11.2
ADFコントローラのメタデータの検証
17.11.3
adf-config.xmlの検索
17.11.4
サーバー/クラスタ環境でのメモリー・スコープのレプリケート
第IV部 データバインドされたWebユーザー・インタフェースの作成
18
Webインタフェースの概説
18.1
ADF Facesを使用したWebアプリケーション開発の概要
18.2
ページ・テンプレートの使用
18.2.1
ADFページ・テンプレートでのADFデータ・バインディングの使用方法
18.2.2
ページ・テンプレートにADF Modelレイヤー・バインディングを使用するときに行われる処理
18.2.3
実行時に行われる処理: ページでのテンプレートの使用方法
18.3
Webページの作成
18.4
Fusion WebアプリケーションでのマネージドBeanの使用
18.4.1
マネージドBeanを使用した情報の格納方法
18.4.2
マネージドBeanの作成時の処理
19
Fusionページ・ライフサイクル
19.1
Fusionページ・ライフサイクルの概要
19.2
JSFページ・ライフサイクルとADFページ・ライフサイクル
19.2.1
Refreshプロパティの正しい使用について
19.2.2
タスク・フローとライフサイクルについて
19.3
オブジェクト・スコープ・ライフサイクル
19.3.1
オブジェクト・スコープとタスク・フローについて
19.4
ADFページ・ライフサイクルのカスタマイズ
19.4.1
カスタム・フェーズ・リスナーの作成方法
19.4.2
リスナーをグローバルに登録する方法
19.4.3
リスナーの順序について
19.4.4
単一ページのライフサイクル・リスナーの登録方法
19.4.5
ページ・フラグメントのRegionControllerの拡張について
20
データバインドされた基本的なページの作成
20.1
データバインドされた基本的なページの作成の概要
20.2
属性を使用したテキスト・フィールドの作成方法
20.2.1
テキスト・フィールドの作成方法
20.2.2
テキスト・フィールドの作成時の処理
20.2.2.1
イテレータ・バインディングの作成および使用
20.2.2.2
値バインディングの作成および使用
20.2.2.3
EL式を使用したUIコンポーネントのバインド
20.3
基本的なフォームの作成
20.3.1
フォームの作成方法
20.3.2
フォームの作成時の処理
20.4
レンジ・ナビゲーションのフォームへの組入れ
20.4.1
フォームへのナビゲーション・コントロールの挿入方法
20.4.2
コマンド・ボタンの作成時の処理
20.4.2.1
組込みナビゲーション操作のアクション・バインディングの使用方法
20.4.2.2
イテレータのRangeSize属性
20.4.2.3
EL式を使用したナビゲーション操作へのバインド
20.4.2.4
自動部分ページ・レンダリングの使用
20.4.3
実行時に行われる処理: アクション・イベントおよびアクション・リスナーの動作方法
20.4.4
ブラウザの「戻る」ボタンおよびレコード間の移動について
20.5
既存レコードを編集するフォームの作成
20.5.1
編集フォームの作成方法
20.5.2
組込み操作を使用してデータを変更した場合の処理
20.6
入力フォームの作成
20.6.1
タスク・フローを使用した入力フォームの作成方法
20.6.2
タスク・フローを使用した入力フォームの作成時の処理
20.6.3
実行時に行われる処理: メソッド・アクティビティからのCreateInsertアクション
20.6.4
順序番号の表示について
20.7
実行時に表示するデータを決定する動的フォームの使用
20.7.1
動的フォームの使用方法
20.7.2
動的コンポーネント使用時の処理
20.7.3
実行時に行われる処理: 属性値の動的な決定方法
20.8
フォーム上のUIコンポーネントおよびバインディングの変更
20.8.1
UIコンポーネントおよびバインディングの変更方法
20.8.2
属性およびバインディングを変更した場合の処理
21
ADFによるデータバインドされた表の作成
21.1
表の追加の概要
21.2
基本表の作成
21.2.1
基本表の作成方法
21.2.2
表の作成時の処理
21.2.2.1
表のイテレータと値バインディング
21.2.2.2
ADF Faces表のJSFページのコード
21.2.3
表での現在行の設定について
21.3
編集可能な表の作成
21.3.1
編集可能な表の作成方法
21.3.2
編集可能な表の作成時の処理
21.4
入力表の作成
21.4.1
入力表の作成方法
21.4.2
入力表の作成時の処理
21.4.3
実行時に行われる処理: CreateInsertおよび部分ページ更新の動作方法
21.4.4
CreateおよびCreateInsertについて
21.5
複数選択機能の提供
21.5.1
複数選択機能の追加方法
21.5.2
実行時に行われる処理: 複数行に対する操作の実行方法
21.6
表に表示される属性の変更
21.6.1
表示される属性の変更方法
21.6.2
表のバインディングの変更方法
21.6.3
バインディングまたは表示される属性の変更時の処理
22
マスター/ディテール・データの表示
22.1
マスター/ディテール・データの表示の概要
22.2
「データ・コントロール」パネルでのマスター/ディテール・オブジェクトの識別
22.3
表およびフォームを使用したマスター/ディテール・オブジェクトの表示
22.3.1
表およびフォームでのマスター/ディテール・オブジェクトの表示方法
22.3.2
マスター/ディテール表およびフォームの作成時の処理
22.3.2.1
JSFページで生成されるコード
22.3.2.2
ページ定義ファイルで定義されるバインディング・オブジェクト
22.3.3
実行時に行われる処理
22.3.4
個別ページ上のマスター/ディテールについて
22.4
ツリーを使用したマスター/ディテール・オブジェクトの表示
22.4.1
ツリーでのマスター/ディテール・オブジェクトの表示方法
22.4.2
ADFデータバインド・ツリーの作成時の処理
22.4.2.1
JSFページで生成されるコード
22.4.2.2
ページ定義ファイルで定義されるバインディング・オブジェクト
22.4.3
実行時に行われる処理
22.5
ツリー表を使用したマスター/ディテール・オブジェクトの表示
22.5.1
ツリー表でのマスター/ディテール・オブジェクトの表示方法
22.5.2
データバインド・ツリー表の作成時の処理
22.5.2.1
JSFページで生成されるコード
22.5.2.2
ページ定義ファイルで定義されるバインディング・オブジェクト
22.5.3
実行時に行われる処理
22.5.4
TargetIteratorプロパティの使用
23
データバインドされた選択リストおよびシャトルの作成
23.1
選択リストの作成
23.1.1
単一選択リストの作成方法
23.1.2
モデルドリブン・リストの作成方法
23.1.3
固定値を含む選択リストの作成方法
23.1.4
動的に生成される値を含む選択リストの作成方法
23.1.5
モデルドリブン選択リストの作成時の処理
23.1.6
固定選択リストの作成時の処理
23.1.7
選択リストの値について
23.1.8
動的選択リストの作成時の処理
23.2
ナビゲーション・リスト・バインディングを持つリストの作成
23.3
データバインド・シャトルの作成
23.3.1
シャトルの作成方法
24
データバインドされたADFデータ視覚化コンポーネントの作成
24.1
ADFデータ視覚化コンポーネントの作成の概要
24.2
データバインドされたグラフの作成
24.2.1
グラフの作成方法
24.2.2
「データ・コントロール」パネルによるグラフ作成時の処理
24.2.3
マスター/ディテール処理のグラフの行選択リスナーの使用について
24.3
データバインドされたゲージの作成
24.3.1
データバインドされたダイアル・ゲージの作成方法
24.3.2
データ・コントロールからのダイアル・ゲージの作成時の処理
24.3.3
データバインドされたステータス・メーター・ゲージ・セットの作成方法
24.3.4
データ・コントロールからのステータス・メーター・ゲージの作成時の処理
24.4
データバインドされたピボット・テーブルの作成
24.4.1
ピボット・テーブルの作成方法
24.4.2
「データ・コントロール」パネルによるピボット・テーブルの作成時の処理
24.4.2.1
ピボット・テーブルのバインディング
24.4.2.2
ADFピボット・テーブルのJSFページのコード
24.4.3
ピボット・テーブルの属性の集計について
24.4.3.1
重複するデータ行のデフォルトの集計
24.4.3.2
重複行のカスタム集計
24.4.4
ピボット・テーブルへの初期ソートの指定について
24.5
データバインドされた地理マップの作成
24.5.1
点テーマを使用して地図を作成する方法
24.5.2
点テーマの点スタイル・アイテムの作成方法
24.5.3
点テーマを使用した地図の作成時の処理
24.5.3.1
点テーマのバインディングXML
24.5.3.2
地理マップおよび点テーマのJSFページのXMLコード
24.5.4
マップ点テーマへのカスタム点スタイル・アイテムの追加について
24.5.5
データバインドされたカラー・テーマを地図に追加する方法
24.5.6
地図へのカラー・テーマの追加時の処理
24.5.6.1
カラー・テーマのバインディングXML
24.5.6.2
カラー・テーマのJSFページのXMLコード
24.5.7
マップ・カラー・テーマでの色のカスタマイズについて
24.5.8
データバインドされた円グラフ・テーマを地図に追加する方法
24.5.9
地図への円グラフ・テーマの追加時の処理
24.5.9.1
円グラフ・テーマのバインディングXML
24.5.9.2
円グラフ・テーマのJSFページのコード
24.6
データバインドされたガント・チャートの作成
24.6.1
データバインドされたプロジェクト・ガントの作成方法
24.6.2
データ・コントロールからのプロジェクト・ガントの作成時の処理
24.6.3
プロジェクト・ガントのサマリー・タスクについて
24.6.4
プロジェクト・ガントのパーセント完了について
24.6.5
プロジェクト・ガントの分散について
24.6.6
データバインドされたリソース使用率ガントの作成方法
24.6.7
リソース使用率ガントの作成時の処理
24.6.8
データバインドされたスケジュール・ガントの作成方法
24.6.9
スケジュール・ガントの作成時の処理
25
ADFによるデータバインドされた検索フォームの作成
25.1
検索フォームの作成の概要
25.1.1
問合せ検索フォーム
25.1.2
クイック問合せ検索フォーム
25.1.3
問合せ検索フォームの名前付きバインド変数
25.1.4
フィルタ処理された表とQuery-by-Example検索
25.1.5
暗黙的ビュー基準と名前付きビュー基準
25.1.6
値リスト(LOV)入力フィールド
25.2
問合せ検索フォームの作成
25.2.1
結果表またはツリー表付きの問合せ検索フォームの作成方法
25.2.2
問合せ検索フォームを作成した後で結果コンポーネントを追加する方法
25.2.3
最初の問合せ実行を追跡する方法
25.2.4
問合せフォーム作成時の処理
25.2.5
実行時に行われる処理: 検索フォームの作成
25.3
検索フォーム・プロパティの設定
25.3.1
ビュー基準に検索フォーム・プロパティを設定する方法
25.3.2
問合せコンポーネントに検索フォーム・プロパティを設定する方法
25.3.3
カスタム演算子を作成または標準演算子を削除する方法
25.4
クイック問合せ検索フォームの作成
25.4.1
結果表またはツリー表付きのクイック問合せ検索フォームの作成方法
25.4.2
クイック問合せ検索フォームを作成した後で結果コンポーネントを追加する方法
25.4.3
クイック問合せのレイアウト書式を設定する方法
25.4.4
クイック問合せ検索フォームの作成時の処理
25.4.5
実行時に行われる処理: クイック問合せの作成
25.5
フィルタ処理された検索表の作成
26
より複雑なページの作成
26.1
より複雑なページの概要
26.2
メソッドを実行するためのコマンド・コンポーネントの作成
26.2.1
カスタム・メソッドにバインドされたコマンド・コンポーネントの作成方法
26.2.2
メソッドを使用したコマンド・コンポーネント作成時の処理
26.2.2.1
メソッドでのパラメータの使用方法
26.2.2.2
EL式を使用したメソッドへのバインド
26.2.2.3
メソッド・コールからの戻り値の使用
26.2.3
実行時に行われる処理: コマンド・ボタンへのメソッドのバインド
26.3
コマンド・コンポーネントを使用したパラメータ値の設定
26.3.1
コマンド・コンポーネント内でのsetPropertyListenerを使用したパラメータの設定方法
26.3.2
パラメータの設定時の処理
26.3.3
実行時に行われる処理: コマンド・コンポーネントを使用したパラメータの設定
26.4
宣言メソッドの上書き
26.4.1
宣言メソッドの上書き方法
26.4.2
宣言メソッドの上書き時の処理
26.5
コンテキスト・イベントの作成
26.5.1
コンテキスト・イベントの作成方法
26.5.2
イベント・マップの手動による作成方法
26.5.3
コンテキスト・イベントの作成時の処理
26.5.4
実行時に行われる処理: コンテキスト・イベント
26.6
ADF Modelレイヤー検証の追加
26.6.1
検証の追加方法
26.6.2
実行時に行われる処理: Model検証規則
26.7
エラー・メッセージの表示
26.8
エラー処理のカスタマイズ
26.8.1
複数スレッドを処理するエラー・ハンドラの作成
27
プレースホルダ・データ・コントロールによるページの設計
27.1
プレースホルダ・データ・コントロールの概要
27.2
プレースホルダ・データ・コントロールの作成
27.2.1
プレースホルダ・データ・コントロールの作成方法
27.2.2
プレースホルダ・データ・コントロールの作成時の処理
27.3
プレースホルダ・データ型の作成
27.3.1
プレースホルダ・データ型の作成方法
27.3.2
プレースホルダ・データ型の作成時の処理
27.3.3
プレースホルダ・データ型の属性をLOVに構成する方法
27.3.4
マスター/ディテール・データ型の作成方法
27.3.5
マスター/ディテール・データ型の作成時の処理
27.3.6
サンプル・データの追加方法
27.3.7
サンプル・データの追加時の処理
27.4
プレースホルダ・データ・コントロールの使用
27.4.1
プレースホルダ・データ・コントロールの制限
27.4.2
レイアウトの作成
27.4.3
検索フォームの作成
27.4.4
コンポーネントのバインド
27.4.5
コンポーネントのリバインド
27.4.6
ADFライブラリJARへのプレースホルダ・データ・コントロールのパッケージ化
第V部 アプリケーションの完了
28
Fusion Webアプリケーションへのセキュリティの追加
28.1
Fusion WebアプリケーションのADFセキュリティの導入
28.2
ADF Securityでの認証と認可の選択
28.2.1
ADF認証のみを有効化する方法
28.2.2
強制認可を選択しない場合の処理
28.2.3
valid-usersロールについて
28.2.4
ADF認証および認可を有効化する方法
28.2.5
強制認可を選択する場合の処理
28.2.6
ADF Securityを無効化する方法
28.2.7
ADFセキュリティを無効にしたときの処理
28.2.8
実行時に行われる処理: Oracle ADF Securityによる認証の処理
28.2.9
実行時に行われる処理: Oracle ADF Securityによる認可の処理
28.3
Fusion Webアプリケーションでのユーザーとロールの定義
28.3.1
JDeveloperでtest-allアプリケーション・ロールを有効にする方法
28.3.2
JDeveloperでアプリケーション・ロールを定義する方法
28.3.3
JDeveloperでアイデンティティ・ストアをテスト・ユーザーに関連付ける方法
28.4
ADF Securityでのアクセス・ポリシーの定義
28.4.1
ADFバインド・タスク・フローで権限を付与する方法
28.4.2
ADFページ定義を使用して個別Webページに対する権限を付与する方法
28.4.3
ADF Business Componentsを使用して行データをセキュリティ保護する方法
28.4.3.1
ADF Business Componentsエンティティ・オブジェクトでの権限の定義
28.4.3.2
ADF Business Componentsの権限の付与
28.4.4
ADFリソースのセキュリティ・ポリシー定義の際に行われる処理
28.4.5
ADFリソース権限について
28.4.6
正規表現を使用したリソース・グループのポリシーの定義方法
28.5
Fusion Webアプリケーションでのユーザー認証の処理
28.5.1
アプリケーションのログイン・コンポーネントの作成方法
28.5.2
Webページにログイン・コンポーネントを追加する方法
28.5.3
アプリケーションのログイン・ページの作成方法
28.5.3.1
Oracle ADF Facesベースのログイン・ページの作成
28.5.3.2
バッキングBeanのログイン・コードの作成
28.5.3.3
Oracle ADF Facesベースのログイン・ページのweb.xmlファイルの構成
28.5.3.4
ログイン・ページのパブリック化の確認
28.5.4
アプリケーションのパブリックなようこそページの作成方法
28.5.4.1
ようこそページのパブリック化の確認
28.5.4.2
ログイン・リンクおよびログアウト・リンクの追加
28.5.4.3
セキュアなページへのリンクの非表示化
28.5.5
無名ユーザーについて
28.6
Fusion Webアプリケーションでの認可チェックの実行
28.6.1
式言語(EL)を使用したポリシーの評価方法
28.6.2
ELの遅延評価について
28.6.3
Javaを使用したポリシーの評価方法
28.7
Oracle ADF Securityコンテキストからの他の情報の取得
28.7.1
セキュリティが有効かどうかの判定方法
28.7.2
ユーザーが認証済かどうかの判定方法
28.7.3
現在のユーザー名の判別方法
28.7.4
Java EEセキュリティ・ロールのメンバーシップの判別方法
28.8
JDeveloper統合WLSでのADF Securityのテスト
28.9
本番環境へのデプロイメントの準備
29
ADFコンポーネントのテストとデバッグ
29.1
Oracle ADFのデバッグの概要
29.2
単純なOracle ADFコンパイル・エラーの修正
29.3
単純なOracle ADFランタイム・エラーの修正
29.4
ADFログ出力とBusiness Component Browserの使用
29.4.1
診断ロギングを有効化する方法
29.4.2
Oracle ADFデバッグ構成の作成方法
29.4.3
デバッガでBusiness Component Browserを使用する方法
29.5
ADF宣言デバッガの使用
29.5.1
デバッガでのADFソース・コードの使用
29.5.2
ADFソース・ユーザー・ライブラリの設定方法
29.5.3
ADFソース・ライブラリのプロジェクトへの追加方法
29.5.4
EL式エバリュエータの使用
29.5.5
スタック・トレース情報を表示およびエクスポートする方法
29.6
ADF宣言ブレークポイントの設定
29.6.1
タスク・フロー・アクティビティ・ブレークポイントの設定方法
29.6.2
ページ定義実行可能ファイル・ブレークポイントの設定方法
29.6.3
ページ定義アクション・バインディング・ブレークポイントの設定方法
29.6.4
ページ定義属性値バインディング・ブレークポイントの設定方法
29.6.5
ADF構造ウィンドウの使用方法
29.6.6
ADFデータ・ウィンドウの使用方法
29.7
Javaコード・ブレークポイントの設定
29.7.1
クラスおよびメソッド上にJavaブレークポイントを設定する方法
29.7.2
ソース・エディタの使用を最適化する方法
29.7.3
ADFソース・コードを使用してブレークポイントを設定およびデバッグする方法
29.7.4
シンボリック・デバッグでデバッグ・ライブラリを使用する方法
29.7.5
様々なブレークポイントの使用方法
29.7.6
コントロール向上のためのブレークポイントの編集方法
29.7.7
クラス・メンバーのビューのフィルタリング方法
29.7.8
一般的なOracle ADFブレークポイントの使用方法
29.8
JUnitを使用したリグレッション・テスト
29.8.1
JUnit拡張機能を取得する方法
29.8.2
JUnitテスト・ケースの作成方法
29.8.3
JUnitテスト・フィクスチャの作成方法
29.8.4
JUnitテスト・スイートの作成方法
29.8.5
Antビルド・スクリプトの一部としてのJUnitテスト・スイートの実行方法
30
Fusion Webアプリケーションのリファクタ
30.1
Fusion Webアプリケーションのリファクタの概要
30.2
ファイルの名前の変更
30.3
JSFページの移動
30.4
pagedef.xmlバインディング・オブジェクトのリファクタ
30.5
ADF Business Componentsのリファクタ
30.6
属性のリファクタ
30.7
名前付き要素のリファクタ
30.8
ADFタスク・フローのリファクタ
30.9
DataBindings.cpxファイルのリファクタ
30.10
抽象レイヤーを越えるリファクタ
30.11
リファクタの制限
30.12
.jpxプロジェクト・ファイルのリファクタ
31
アプリケーション・コンポーネントの再利用
31.1
再利用可能なコンポーネントの概要
31.1.1
再利用可能なコンポーネントの作成
31.1.1.1
ネーミング規則
31.1.1.2
ADFライブラリJARデプロイメント・プロファイルのネーミング・プロセス
31.1.1.3
関連プロジェクトの保持
31.1.1.4
関連性のあるテクノロジ・スコープの選択
31.1.1.5
パスおよびフォルダの選択
31.1.1.6
再利用可能なコンポーネント内への接続の組込み
31.1.2
リソース・パレットの使用
31.1.3
拡張機能ライブラリ
31.2
ADFライブラリへの再利用可能なADFコンポーネントのパッケージ化
31.2.1
コンポーネントをADFライブラリJARにパッケージ化する方法
31.2.2
ADFライブラリJARへのプロジェクトのパッケージ化時の処理
31.2.2.1
アプリケーション・モジュール
31.2.2.2
データ・コントロール
31.2.2.3
タスク・フロー
31.2.2.4
ページ・テンプレート
31.2.2.5
宣言的なコンポーネント
31.3
プロジェクトへのADFライブラリ・コンポーネントの追加
31.3.1
リソース・パレットを使用してADFライブラリJARをプロジェクトに追加する方法
31.3.2
ADFライブラリJARをプロジェクトに手動で追加する方法
31.3.3
プロジェクトへのADFライブラリJARの追加時の処理
31.3.4
ADFライブラリのコンポーネントの使用について
31.3.4.1
データ・コントロールの使用
31.3.4.2
アプリケーション・モジュールの使用
31.3.4.3
ビジネス・コンポーネントの使用
31.3.4.4
タスク・フローの使用
31.3.4.5
ページ・テンプレートの使用
31.3.4.6
宣言的なコンポーネントの使用
31.3.5
ADFライブラリのコンポーネントの区別について
31.3.6
実行時に行われる処理: ADFライブラリの追加
31.4
プロジェクトからのADFライブラリJARの削除
31.4.1
「リソース・パレット」を使用してADFライブラリJARをプロジェクトから削除する方法
31.4.2
ADFライブラリJARをプロジェクトから手動で削除する方法
32
Fusion Webアプリケーションのデプロイ
32.1
Fusion Webアプリケーションのデプロイの概要
32.2
ターゲット・アプリケーション・サーバーへの接続の作成
32.3
デプロイメント・プロファイルの作成
32.3.1
デプロイメント・プロファイルの作成方法
32.3.2
デプロイメント・プロファイル・プロパティの表示および変更の方法
32.4
デプロイメント・ディスクリプタの作成と編集
32.4.1
デプロイメント・ディスクリプタの作成方法
32.4.2
デプロイメント・ディスクリプタ・プロパティの表示または変更の方法
32.4.3
WebLogic互換のapplication.xmlファイルを作成または構成する方法
32.4.4
WebLogic互換のweb.xmlファイルを作成または構成する方法
32.4.5
ADF Faces Componentsを使用するアプリケーションのデプロイメント・ディスクリプタの作成方法
32.5
WebLogicインストールへのADFランタイムのインストール
32.5.1
ADFランタイムを既存のWebLogic Serverにインストールする方法
32.5.2
ADFライブラリについて
32.6
WebLogicドメインの作成と拡張
32.6.1
Oracle ADF用のWebLogicドメインの作成方法
32.6.2
Oracle ADF用のWebLogicドメインの拡張方法
32.7
WebLogicドメイン・サーバー用のJDBCデータ・ソースの作成
32.8
アプリケーションのデプロイ
32.8.1
JDeveloperからWebLogic Serverへのデプロイ方法
32.8.2
デプロイメント用のEARファイルの作成方法
32.8.3
Antを使用したアプリケーションのデプロイ方法
32.9
アプリケーションのテストとデプロイの検証
第VI部 高度なトピック
33
ビジネス・コンポーネントの高度な手法
33.1
ADF Business Componentsの機能のグローバルな拡張
33.1.1
ADF Business Componentsフレームワーク拡張クラスとは
33.1.2
フレームワーク拡張クラスの作成方法
33.1.3
フレームワーク拡張クラス作成時の処理
33.1.4
フレームワーク拡張クラスをADFコンポーネントの基礎にする方法
33.1.5
フレームワーク拡張クラスをコンポーネントの基礎にするときの処理
33.1.5.1
フレームワーク拡張クラスをXMLのみのコンポーネントの基礎にする場合
33.1.5.2
フレームワーク拡張クラスをカスタムJavaクラスのあるコンポーネントの基礎にする場合
33.1.6
留意事項
33.1.6.1
カスタム・コンポーネントのJavaファイルのExtends句を手入力で変更してはならない
33.1.6.2
複数レベルのフレームワーク拡張クラスを使用できる
33.1.6.3
フレームワーク拡張クラスに対するプロジェクト・レベルの設定
33.1.6.4
IDEレベルでのフレームワーク拡張クラスの設定
33.2
フレームワーク拡張のレイヤーの作成
33.2.1
フレームワーク拡張レイヤー・クラスのレイヤーの作成方法
33.2.2
フレームワーク拡張レイヤーをJARファイルにパッケージする方法
33.2.3
フレームワーク拡張JARファイルのライブラリ定義の作成方法
33.3
拡張クラスによるフレームワークの動作のカスタマイズ
33.3.1
ビュー・オブジェクトおよびエンティティ・オブジェクトのランタイム・メタデータにアクセスする方法
33.3.2
ランタイム・メタデータを使用した汎用機能の実装
33.3.3
カスタム・プロパティによって駆動される汎用機能の実装
33.3.4
留意事項
33.3.4.1
実行時における属性の種類の判定
33.3.4.2
設計時のカスタム・プロパティ名の構成
33.3.4.3
実行時のカスタム・プロパティの設定
33.4
汎用拡張インタフェースの作成
33.5
ストアド・プロシージャとストアド・ファンクションの呼出し
33.5.1
引数のないストアド・プロシージャの呼出し
33.5.2
IN引数のみのストアド・プロシージャの呼出し
33.5.3
IN引数のみのストアド・ファンクションの呼出し
33.5.4
他の種類のストアド・プロシージャの呼出し
33.6
現在のデータベース・トランザクションへのアクセス
33.7
再利用可能なビジネス・コンポーネントのライブラリでの作業
33.7.1
ビジネス・コンポーネントの再利用可能なライブラリの作成方法
33.7.2
ライブラリから再利用可能なコンポーネントのパッケージをインポートする方法
33.7.3
インポートしたパッケージをプロジェクトから削除する方法
33.7.4
ライブラリから再利用可能なコンポーネントのパッケージをインポートするときの処理
33.7.5
留意事項
33.7.5.1
インポートされたライブラリ内のコンポーネントは編集不能
33.7.5.2
JARの変更を反映するために閉じて開きなおす必要がある
33.8
ビジネス・コンポーネントのエラー・メッセージのカスタマイズ
33.8.1
基になっているADF Business Componentsのエラー・メッセージをカスタマイズする方法
33.8.2
基になっているADF Business Componentsのエラー・メッセージをカスタマイズするときに行われる処理
33.8.3
データベース制約違反のエラー・メッセージのカスタマイズ方法
33.8.4
カスタム制約エラー処理ルーチンの実装方法
33.8.4.1
カスタム・データベース・トランザクション・フレームワーク拡張クラスの作成
33.8.4.2
カスタム・データベース・トランザクション・クラスを使用するためのアプリケーション・モジュールの構成
33.9
継承を使用する拡張コンポーネントの作成
33.9.1
別のコンポーネントを拡張するコンポーネントの作成方法
33.9.2
コンポーネントを作成後に拡張する方法
33.9.3
別のコンポーネントを拡張するコンポーネントの作成時の処理
33.9.3.1
拡張コンポーネントのXMLディスクリプタの理解
33.9.3.2
拡張コンポーネントに対するJavaコード生成の理解
33.9.4
留意事項
33.9.4.1
親のクラスとインタフェースは拡張コンポーネントの操作にも使用できる
33.9.4.2
拡張コンポーネントでは「クラスの拡張」が無効になる
33.9.4.3
主要なコンポーネント・タイプで拡張できるもの
33.9.4.4
親を規準とする拡張コンポーネントの属性索引
33.10
提供されるアプリケーションでの拡張コンポーネントの置換え
33.10.1
コードの変更よりコンポーネントの拡張と置換えの方がよい理由
33.10.2
拡張コンポーネントの置換方法
33.10.3
置換時の処理
33.10.4
基のアプリケーションでの置換コンポーネントの有効化
34
エンティティ・オブジェクトの高度な手法
34.1
ドメインを使用したカスタム検証済データ型の作成
34.1.1
ドメインとは
34.1.2
ドメインの作成方法
34.1.3
ドメインの作成時の処理
34.1.4
ドメインについて
34.1.4.1
エンティティ・オブジェクトおよびビュー・オブジェクトの属性に対するドメインの使用
34.1.4.2
妥当性検査が失敗した場合は検証メソッドからDataCreationExceptionをスローする
34.1.4.3
String値を集約するStringドメイン
34.1.4.4
既存のドメイン型を拡張する他のドメイン
34.1.4.5
不変のJavaクラスである単純なドメイン
34.1.4.6
Oracleオブジェクト型に対するドメインの作成
34.1.4.7
ドメイン・クラスへの素早い移動
34.1.4.8
共通JARへのドメインのパッケージ化
34.1.4.9
カスタム・ドメインのプロパティを継承するエンティティ・オブジェクトとビュー・オブジェクトの属性
34.1.4.10
エンティティ・レベルまたはビュー・レベルでは制限を緩めることができないドメイン設定
34.2
行の削除に代わる削除済フラグの更新
34.2.1
行が削除されたときに削除済フラグを更新する方法
34.2.2
削除のかわりの更新DML操作の強制
34.3
バッチ更新の使用
34.4
エンティティ・アソシエーションの高度な手法
34.4.1
複雑なアソシエーションを実装するためのアソシエーションSQL句の変更
34.4.2
エンティティ・レベルでのビュー・リンク・アクセッサ属性の公開
34.4.3
行セットを保持することによるエンティティ・アクセッサのアクセスの最適化
34.5
PL/SQLパッケージAPIに基づくエンティティ・オブジェクト
34.5.1
ビューを基にしてエンティティ・オブジェクトを作成する方法
34.5.2
ビューを基にしてエンティティ・オブジェクトを作成するときに行われる処理
34.5.3
PL/SQLベースのエンティティに関する詳細のベース・クラスへの集中化
34.5.4
DML操作のストアド・プロシージャ呼出しの実装
34.5.5
選択処理およびロック処理の追加
34.5.5.1
ロックと選択を処理するためのPLSQLEntityImplベース・クラスの更新
34.5.5.2
Productエンティティに対するロックおよび選択の実装
34.5.5.3
RowInconsistentException後のエンティティ・オブジェクトのリフレッシュ
34.6
結合ビューまたはリモートDBLinkに基づくエンティティ・オブジェクト
34.7
ビジネス・ドメイン・レイヤーでの継承の使用
34.7.1
継承が有効な状況の理解
34.7.2
継承階層内にエンティティ・オブジェクトを作成する方法
34.7.2.1
識別子列と個別の値の識別
34.7.2.2
エンティティの種類に関連する属性のサブセットの識別
34.7.2.3
継承階層へのベース・エンティティ・オブジェクトの作成
34.7.2.4
継承階層へのサブタイプ・エンティティ・オブジェクトの作成
34.7.3
継承階層内のエンティティ・オブジェクトにメソッドを追加する方法
34.7.3.1
階層内の全エンティティ・オブジェクトに共通するメソッドの追加
34.7.3.2
サブタイプ・エンティティでの共通メソッドのオーバーライド
34.7.3.3
サブタイプ・エンティティに固有のメソッドの追加
34.7.4
継承の使用について
34.7.4.1
新しいベース・エンティティを導入する必要がある場合
34.7.4.2
主キーによるサブタイプ・エンティティの検索
34.7.4.3
多相エンティティ・オブジェクトの慣用名を持つビュー・オブジェクトを作成する方法
34.8
制約違反を防ぐためのエンティティ・ポスト順序の制御
34.8.1
デフォルトの後処理順序
34.8.2
コンポジットによるデフォルトの処理順序の変更
34.8.3
ポスト順序を制御するためのpostChanges()のオーバーライド
34.8.3.1
実際のポスト順序の問題の観察
34.8.3.2
Productより前のSupplierの強制的なポスト
34.8.3.3
DBSequenceの値が設定される主キーに基づくアソシエーションの理解
34.8.3.4
DBSequence割当ての外部キーに対する参照の更新
34.9
属性の自動再計算の実装
34.10
カスタム検証規則の実装
34.10.1
カスタム検証規則の作成方法
34.10.2
規則用の設計時Beanカスタマイザの追加
34.10.3
JDeveloperでのカスタム規則の登録と使用
34.11
新規履歴タイプの作成
34.11.1
新規履歴タイプの作成方法
34.11.2
履歴タイプの削除方法
35
ビュー・オブジェクトの高度な手法
35.1
ビュー・オブジェクトの高度な概念と機能
35.1.1
最初のN行のみをフェッチするための最大フェッチ・サイズの使用
35.1.2
同じエンティティに基づくビュー・オブジェクトでの新しい行の一貫した表示
35.1.2.1
ビュー・リンク一貫性モードの動作方法
35.1.2.2
ビュー・リンク一貫性のデフォルト設定とその変更方法
35.1.2.3
行セットに追加されるポストされていない新規行を制限するためのRowMatchの使用
35.1.2.4
動的Where句の設定によるビュー・リンク一貫性の無効化
35.1.2.5
他のビュー・オブジェクトからの新規行の末尾への追加
35.1.2.6
再実行時にRowSetの先頭に追加される未ポストの新規行
35.1.3
ビュー・リンク・アクセッサとデータ・モデル・ビュー・リンク・インスタンス
35.1.3.1
アクティブなマスター/ディテール調整による動的ディテール行セットの有効化
35.1.3.2
ビュー・リンク・アクセッサ属性を使用した固定ディテール行セットへのアクセス
35.1.3.3
アクセッサ属性が作成する内部ビュー・オブジェクトに基づく個別の行セット
35.1.4
範囲を使用したページ単位でのデータの提示およびスクロール
35.1.5
範囲ページ移動を使用した大きい結果セットの効率的なスクロール
35.1.5.1
上位N問合せのサポート方法
35.1.5.2
ビュー・オブジェクトの範囲ページ移動を有効にする方法
35.1.5.3
範囲ページ移動を有効にしたときに行われる処理
35.1.5.4
範囲ページ移動を使用するときのビュー行のキャッシュ時の処理
35.1.5.5
範囲ページ移動を使用して特定のページ番号にスクロールする方法
35.1.5.6
範囲ページ移動を使用するときの行セット内のページ数の推定
35.1.5.7
範囲ページ移動モードを使用するときのトレードオフ
35.1.6
複数マスターのデータ・モデルの設定
35.1.7
findByKey()で部分キーを使用できる場合
35.1.8
UIの状態を格納するための動的属性の作成
35.1.9
複数の行セットと行セット・イテレータの使用
35.1.10
行セットを保持することによるビュー・リンク・アクセッサのアクセスの最適化
35.2
最善のパフォーマンスを得るためのビュー・オブジェクトのチューニング
35.2.1
パラメータ使用の問合せのためのバインド変数の使用
35.2.1.1
問合せの再解析を防ぐためのバインド変数の使用
35.2.1.2
SQLインジェクション攻撃を避けるためのバインド変数の使用
35.2.2
読取り専用データへのエンティティ・ベースのビュー・オブジェクトの使用の検討
35.2.3
異常な問合せを識別するためのSQLトレースの使用
35.2.4
すべてのビュー・オブジェクトに適したチューニング設定の検討
35.2.4.1
データベース取得オプションの適切な設定
35.2.4.2
一度に1行のフェッチが適切かどうかの検討
35.2.4.3
必要に応じた問合せオプティマイザ・ヒントの指定
35.2.5
設計時のビュー・オブジェクトの作成
35.2.6
ビュー行のキャッシュを避ける前方のみモードの使用
35.3
エキスパート・モードを使用したSQL問合せの完全な制御
35.3.1
SQLを完全に制御するためにエキスパート・モードを有効にする方法
35.3.2
エキスパート・モードを有効にしたときに行われる処理
35.3.3
留意事項
35.3.3.1
手動属性マッピングを行う必要がある場合
35.3.3.2
エキスパート・モードを無効にすると失われるカスタム編集
35.3.3.3
エキスパート・モードでは無視されるSQL式の変更
35.3.3.4
誤って計算された式のエンティティ属性へのマップの禁止
35.3.3.5
エキスパート・モードのSQL書式の保持
35.3.3.6
インライン・ビューとしてラップされるエキスパート・モードの問合せ
35.3.3.7
実行時のインライン・ビュー・ラッピングの使用の無効化
35.3.3.8
依存オブジェクトに影響を与える可能性のあるエキスパート・モードの有効化
35.4
ビュー・オブジェクトのカスタムJavaクラスの生成
35.4.1
カスタム・クラスの生成方法
35.4.1.1
バインド変数アクセッサの生成
35.4.1.2
ビュー行属性アクセッサの生成
35.4.1.3
クライアントへのビュー行アクセッサの公開
35.4.1.4
デフォルトのJava生成設定の構成
35.4.2
カスタム・クラス生成時の処理
35.4.2.1
カスタムJavaファイルの表示および操作
35.4.3
カスタム・クラスについて
35.4.3.1
ビュー・オブジェクトのフレームワーク・ベース・クラスについて
35.4.3.2
カスタム・コンポーネント・ファイルに安全に追加できるコード
35.4.3.3
属性索引およびInvokeAccessor生成コード
35.5
複数の名前付きビュー基準のプログラム的処理
35.5.1
名前付きビュー基準の適用
35.5.2
適用されたすべての名前付きビュー基準の除去
35.5.3
実行時の名前付き基準の使用
35.6
行セットのメモリー内でのソート処理とフィルタ処理の実行
35.6.1
ビュー・オブジェクトのSQLモード
35.6.2
メモリー内のビュー・オブジェクト行のソート処理
35.6.2.1
メモリー内ソートでのsetSortByとsetQueryModeの組合せ
35.6.2.2
メモリー内ソート処理の拡張ポイント
35.6.3
ビュー基準によるメモリー内フィルタ処理の実行
35.6.4
RowMatchによるメモリー内フィルタ処理の実行
35.6.4.1
ビュー・オブジェクトへのRowMatchの適用
35.6.4.2
個別の行をテストするためのRowMatchの使用
35.6.4.3
データベースからフェッチされた行に対するRowMatchの影響
35.7
ビュー・オブジェクトを使用した複数の行タイプの処理
35.7.1
多相エンティティ・オブジェクトの慣用名での作業
35.7.2
多相エンティティ・オブジェクトの慣用名によるビュー・オブジェクトの作成方法
35.7.3
多相エンティティ・オブジェクトの慣用名によりビュー・オブジェクトを作成するときに行われる処理
35.7.4
留意事項
35.7.4.1
問合せでは期待するエンティティ・サブタイプに行を制限する必要がある
35.7.4.2
委譲を使用したビュー行での選択したエンティティ・メソッドの公開
35.7.4.3
目的のエンティティ・サブタイプでの新しい行の作成
35.7.5
多相ビュー行関連の作業
35.7.6
多相ビュー行を持つビュー・オブジェクトの作成方法
35.7.7
留意事項
35.7.7.1
拡張されたビュー・オブジェクトでのサブタイプ固有の属性の選択
35.7.7.2
エンティティ・オブジェクトの慣用名をオーバーライドした後のサブタイプ固有のメソッドへの委譲
35.7.7.3
クライアント・コードでの異なるビュー行インタフェース型の使用
35.7.7.4
ビュー行ポリモフィズムと多相エンティティ・オブジェクトの慣用名は直交する概念である
35.8
XMLの読取りと書込み
35.8.1
問合せ済データのXMLの生成方法
35.8.2
XMLを生成するときに行われる処理
35.8.3
留意事項
35.8.3.1
XMLの要素名の制御
35.8.3.2
NULL値属性の要素抑止の制御
35.8.3.3
生成されたXMLの印刷またはXPathを使用した検索
35.8.3.4
生成されるXMLの属性マップによるきめ細かい制御
35.8.3.5
双方向ビュー・リンクでの属性マップ手法の使用
35.8.3.6
生成されたXMLのXSLTスタイルシートによる変換
35.8.3.7
単一行に対するXMLの生成
35.8.4
XMLドキュメントを使用して変更を適用する方法
35.8.5
XMLドキュメントを使用するときに行われる処理
35.8.5.1
ViewObject.readXML()によるXMLドキュメントの処理方法
35.8.5.2
単一行でXMLを処理するためのreadXML()の使用
35.9
代替データソースに対するプログラムでのビュー・オブジェクトの使用
35.9.1
プログラムで読取り専用のビュー・オブジェクトを作成する方法
35.9.2
プログラムでエンティティ・ベースのビュー・オブジェクトを作成する方法
35.9.3
プログラムのビュー・オブジェクト用にオーバーライドする主要なフレームワーク・メソッド
35.9.4
REF CURSORでのビュー・オブジェクトの作成方法
35.9.4.1
create()メソッドのオーバーライド
35.9.4.2
executeQueryForCollection()メソッドのオーバーライド
35.9.4.3
createRowFromResultSet()メソッドのオーバーライド
35.9.4.4
hasNextForCollectionMethod()のオーバーライド
35.9.4.5
releaseUserDataForCollection()メソッドのオーバーライド
35.9.4.6
getQueryHitCount()メソッドのオーバーライド
35.10
複数の更新可能エンティティによるビュー・オブジェクトの作成
35.11
挿入、更新および削除の宣言による禁止
36
アプリケーション状態管理
36.1
状態管理が必要な理由
36.1.1
マルチステップ・タスクの例
36.1.2
ステートフルなアプリケーションを複雑にするステートレスなHTTPプロトコル
36.1.3
Cookieを使用してユーザー・セッションを追跡する方法
36.1.4
HttpSessionの使用がパフォーマンスと信頼性に与える影響
36.2
Fusion Webアプリケーションの状態管理について
36.2.1
後で使用するための保存の機能の基本アーキテクチャ
36.2.2
アプリケーション・モジュール状態管理機能の基本アーキテクチャ
36.2.2.1
受動化と能動化が行われるタイミング
36.2.2.2
オプションのフェイルオーバー・モードを有効にしたときの受動化の変化
36.2.2.3
状態管理解放レベルについて
36.3
後で使用するための保存の使用
36.4
実行時におけるアプリケーション・モジュールの解放レベルの設定
36.4.1
非管理レベルの設定方法
36.4.2
予約レベルの設定方法
36.4.3
管理レベルの設定方法
36.4.4
JSFバッキングBeanでの解放レベルの設定方法
36.4.5
ADF PagePhaseListenerでの解放レベルの設定方法
36.4.6
ADF PageControllerでの解放レベルの設定方法
36.4.7
カスタムADF PageLifecycleでの解放レベルの設定方法
36.5
保存されるモデル状態とクリーンアップされるタイミング
36.5.1
保存される状態
36.5.2
モデル状態が保存される場所
36.5.2.1
データベース利用の受動化の動作方法
36.5.2.2
状態管理表が存在するスキーマの制御
36.5.2.3
受動化ストアの種類の構成
36.5.3
モデル状態がクリーンアップされるタイミング
36.5.3.1
次のスナップショットが取得されたときの前のスナップショットの削除
36.5.3.2
非管理解放で削除される受動化スナップショット
36.5.3.3
フェイルオーバー・モードでの受動化スナップショットの維持
36.5.4
一時的な記憶域表のクリーンアップ
36.6
HttpSessionのタイムアウト
36.6.1
ユーザーの非アクティブ状態による暗黙のタイムアウトの構成方法
36.6.2
明示的なHttpSessionタイムアウトのコーディング方法
36.7
カスタム・ユーザー固有情報の管理
36.7.1
カスタム・ユーザー固有情報の受動化方法
36.7.1.1
カスタム情報の受動化時の処理
36.8
ビュー・オブジェクトの状態の管理
36.8.1
ビュー・オブジェクトの状態の管理方法
36.8.2
ビュー・オブジェクトの受動化について
36.8.3
一時ビュー・オブジェクトおよび属性の状態の管理方法
36.8.4
一時ビュー・オブジェクトの受動化について
36.8.5
一時ビュー・オブジェクトを使用してセッションレベルのグローバル変数を格納する方法
36.9
中間層セーブポイントに対する状態管理の使用
36.9.1
セーブポイントに対する状態管理の使用
36.10
アプリケーション・モジュールの能動化が安全であることの確認テスト
36.10.1
jbo.ampool.doampooling構成パラメータ
36.10.2
能動化をテストするためのアプリケーション・モジュール・プーリングの無効化
36.11
保留中の変更の中間層での保存
36.11.1
アプリケーションを設定してオプティミスティック・ロックを使用する方法
36.11.2
postChanges()メソッドを使用して競合を避ける方法
36.11.3
保留データベース状態に対する予約レベルの使用方法
37
アプリケーション・モジュール・プーリングの理解
37.1
アプリケーション・モジュール・プーリングの概要
37.2
構成プロパティのスコープ
37.3
プール構成パラメータの設定
37.3.1
構成プロパティの宣言的な設定
37.3.2
システム・パラメータとしての構成プロパティの設定
37.3.3
プログラムによる構成プロパティの設定
37.4
プールが作成される数と時期
37.4.1
アプリケーション・モジュール・プール
37.4.2
データベース接続プール
37.4.3
アプリケーション・モジュール・プールと接続プール
37.4.3.1
Oracle Application Serverインスタンスが1つ、Oracle WebLogic Serverインスタンスが1つ、JVMが1つの場合
37.4.3.2
Oracle Application Serverインスタンスが複数、Oracle WebLogic Serverインスタンスが1つ、JVMが複数の場合
37.5
アプリケーション・モジュール・プールのパラメータ
37.5.1
プールの動作に関するパラメータ
37.5.2
プールのサイズ指定に関するパラメータ
37.5.3
プールのクリーンアップに関するパラメータ
37.6
データベース接続プールのパラメータ
37.7
データベースとアプリケーション・モジュール・プールの連携
37.8
データベース・ユーザーの状態とプーリングに関する考慮事項
37.8.1
prepareSession()の起動頻度(jbo.doconnectionpooling = falseの場合)
37.8.2
データベース・ユーザー状態の設定方法(jbo.doconnectionpooling = trueの場合)
37.8.3
データベース状態の設定方法
第VII部 付録
A
Oracle ADF XMLファイル
A.1
ADFメタデータ・ファイルの概要
A.2
ADFファイルの概要図
A.2.1
Oracle ADFデータ・コントロール・ファイル
A.2.2
Oracle ADFデータ・バインディング・ファイル
A.2.3
Web構成ファイル
A.3
adfm.xml
A.4
modelProjectName
.jpx
A.5
bc4j.xcfg
A.6
DataBindings.cpx
A.6.1
DataBindings.cpxの構文
A.6.2
DataBindings.cpxの例
A.7
pageName
PageDef.xml
A.7.1
PageDef.xmlの構文
A.8
adfc-config.xml
A.9
task-flow-definition.xml
A.10
adf-config.xml
A.11
adf-settings.xml
A.12
web.xml
A.13
logging.xml
B
ADFバインディング・プロパティ
B.1
Oracle ADFバインディングのELプロパティ
C
Oracle ADFでの権限付与
C.1
ADFコンポーネントで許可できるアクション
D
一般的なOracle Formsのトリガーに相当するADFの機能
D.1
検証とデフォルト設定(ビジネス・ロジック)
D.2
問合せ処理
D.3
データベース接続
D.4
トランザクション後の処理(レコード・キャッシュ)
D.5
エラー処理
E
ADF Business Componentsのよく使用されるメソッド
E.1
クライアント層でよく使用されるメソッド
E.1.1
ApplicationModuleインタフェース
E.1.2
Transactionインタフェース
E.1.3
ViewObjectインタフェース
E.1.4
RowSetインタフェース
E.1.5
RowSetIteratorインタフェース
E.1.6
Rowインタフェース
E.1.7
StructureDefインタフェース
E.1.8
AttributeDefインタフェース
E.1.9
AttributeHintsインタフェース
E.2
ビジネス・サービス層でよく使用されるメソッド
E.2.1
コンポーネントでのカスタムJavaファイルの制御
E.2.2
ApplicationModuleImplクラス
E.2.2.1
ApplicationModuleImpl上でよくコールされるメソッド
E.2.2.2
カスタムなApplicationModuleImplサブクラスでよく記述されるメソッド
E.2.2.3
カスタムなApplicationModuleImplサブクラスでよくオーバーライドされるメソッド
E.2.3
DBTransactionImpl2クラス
E.2.3.1
DBTransaction上でよくコールされるメソッド
E.2.3.2
カスタムなDBTransactionImpl2サブクラスでよくオーバーライドされるメソッド
E.2.4
EntityImplクラス
E.2.4.1
EntityImpl上でよくコールされるメソッド
E.2.4.2
カスタムなEntityImplサブクラスでよく記述されるメソッド
E.2.4.3
EntityImpl上でよくオーバーライドされるメソッド
E.2.5
EntityDefImplクラス
E.2.5.1
EntityDefImpl上でよくコールされるメソッド
E.2.5.2
EntityDefImpl上でよく記述されるメソッド
E.2.5.3
EntityDefImpl上でよくオーバーライドされるメソッド
E.2.6
ViewObjectImplクラス
E.2.6.1
ViewObjectImpl上でよくコールされるメソッド
E.2.6.2
カスタムなViewObjectImplサブクラスでよく記述されるメソッド
E.2.6.3
カスタムなViewObjectImplサブクラスでよくオーバーライドされるメソッド
E.2.7
ViewRowImplクラス
E.2.7.1
ViewRowImpl上でよくコールされるメソッド
E.2.7.2
ViewRowImpl上でよく記述されるメソッド
E.2.7.3
カスタムなViewRowImplサブクラスでよくオーバーライドされるメソッド
E.2.8
フレームワーク・ベース・クラスの独自層の設定
F
ADF Business Components Java EEデザイン・パターン・カタログ
F.1
ADF Business Componentsによって実装されるJava EEデザイン・パターン
G
Oracle ADFでの一般的なOracle Formsのタスクの実行
G.1
データ関連タスクの実行
G.1.1
外部キーに対する検索表示値の取得方法
G.1.2
データベースからのシステム日付の取得方法
G.1.3
読取り一貫性のない分離モードの実装方法
G.1.4
計算済フィールドの実装方法
G.1.5
ミラー・アイテムの実装方法
G.1.6
タイプCLOBまたはBLOBのデータベース列の使用方法
G.2
ユーザー・インタフェース関連タスクの実行
G.2.1
ページのレイアウト方法
G.2.2
キャンバスのスタック方法
G.2.3
マスター/ディテール画面の実装方法
G.2.4
問合せ入力画面の実装方法
G.2.5
更新可能な複数レコード表の実装方法
G.2.6
ポップアップ値リストの作成方法
G.2.7
ドロップダウン・リストの値リストとしての実装方法
G.2.8
別表からの値のあるドロップダウン・リストの実装方法
G.2.9
即時ロックの実装方法
G.2.10
レコードがロックされた場合のエラーのスロー方法