ヘッダーをスキップ
Oracle Application Server TopLink Mapping Workbenchユーザーズ・ガイド
10gリリース2(10.1.2)
B19120-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

ディスクリプタのプロパティの使用

OracleAS TopLink Mapping Workbenchの各ディスクリプタには、次のデフォルトのタブおよび固有のプロパティがあります。

アドバンスト・プロパティを設定する機能(「詳細プロパティの使用」および「ディスクリプタのデフォルトの詳細プロパティを指定するには:」を参照)を使用して、各ディスクリプタの追加プロパティを指定します。

ディスクリプタ情報の設定

「ディスクリプタ情報」タブを使用して、データベース内の特定の表へのディスクリプタのマップ、主キーの定義、順序付け情報の指定、およびキャッシュ・オプションの設定を行います。

ディスクリプタを表にマップするには:

  1. 「ナビゲータ」ペインでディスクリプタを選択します。「エディタ」ペインにプロパティが表示されます。

  2. 「ディスクリプタ情報」タブをクリックします。

    図4-1 「ディスクリプタ情報」タブ

    desinfo.gifの説明が続く
    図desinfo.gifの説明

  3. 次の表を参照して、各フィールドにデータを入力します。

フィールド 説明
関連表 ドロップダウン・リストを使用して、ディスクリプタ用のデータベース表を選択します。
主キー 表の主キーを指定します。
順序付けの使用 このディスクリプタで順序付けを使用するかどうかを指定します。選択した場合、順序付け用の「名前」「表」および「フィールド」を指定します。詳細は、「順序付けの使用」を参照してください。
読取り専用 このディスクリプタが読取り専用かどうかを指定します。
作業ユニットでの問合せ結果を一致 オブジェクトの読取りまたはすべて読取り問合せに、conformResultsInUnitOfWork()メソッドを使用するために指定します。

詳細は、『Oracle Application Server TopLinkアプリケーション開発者ガイド』を参照してください。

キャッシュのリフレッシュ
デフォルト プロジェクトのデフォルトのキャッシュ・オプションを使用します。OracleAS TopLinkでは、キャッシュをリフレッシュするよう読取り問合せが構成されていないかぎり、キャッシュはリフレッシュされません。
常にリフレッシュする すべての問合せ時にキャッシュ内のオブジェクトをリフレッシュします。

注意: このプロパティを使用すると、パフォーマンスに影響を与える可能性があります。

キャッシュ・ヒットを無効にする 主キーのオブジェクトの読取り問合せ時にキャッシュ・ヒットを無効にします。
新規バージョンの場合のみリフレッシュする データベース内のオブジェクトがキャッシュ内のオブジェクトより新しい場合のみ、キャッシュをリフレッシュします(「オプティミスティック・ロック」フィールドで指定します)。詳細は、「オプティミスティック・ロックの使用」を参照してください。


注意:

問合せ中にディスクリプタでキャッシュ内のオブジェクトをリフレッシュする方法を指定するには、キャッシュ・オプションを使用します。これによって、セッションに対する問合せで行データからのオブジェクトが確実にリフレッシュされます。

クラス情報の設定

クラスおよびディスクリプタの生成後、「クラス情報」タブを使用して、次のことを行います。

  • クラス、属性およびメソッドの名前の変更

  • 生成された属性およびメソッドの追加、削除または編集

  • 新規クラスの作成のためのJavaソースの生成

クラス情報を指定するには:

  1. 「ナビゲータ」ペインでディスクリプタを選択します。「エディタ」ペインにプロパティが表示されます。

  2. 「エディタ」ペインの「クラス情報」タブをクリックします。

  3. 次の中から、適切なタブを選択します。

「クラス」タブ

実装する新規インタフェースを追加するには、「追加」をクリックします。

インタフェースを削除するには、インタフェースを選択し、「削除」をクリックします。

ディスクリプタに対するソース・コードを生成するには、「ソース・コードの生成」をクリックします。

図4-2 「クラス」タブ

clinclas.gifの説明が続く
図clinclas.gifの説明

次の表を参照して、各フィールドにデータを入力します。

フィールド 説明
名前 クラスの名前。このフィールドは表示専用です。
スーパークラス 「参照」をクリックし、クラスおよびパッケージを選択します。
修飾子
アクセス修飾子 クラスがすべてからアクセス可能か、またはそのパッケージ内のみからアクセス可能かを指定します。非パブリック・クラスにはOracleAS TopLink Mapping Workbenchからアクセスできません。
その他の修飾子 クラスが「final」または「abstract」(あるいはその両方)であることを指定します。finalクラスは、他のクラスのスーパークラスの選択リストに含まれず、拡張できません。
実装済インタフェース インタフェースを追加するには、「追加」をクリックしてインタフェースおよびパッケージを選択します。インタフェースを削除するには、インタフェースを選択し、「削除」をクリックします。

注意: インタフェースを削除した後、プロジェクトを保存する必要があります。


「属性」タブ

新規属性を追加するには、「追加」をクリックします。

既存の属性を削除するには、属性を選択し、「削除」をクリックします。

既存の属性の名前を変更するには、属性を選択し、「名前の変更」をクリックします。

図4-3 「属性」-「一般」タブ

clinatt.gifの説明が続く
図clinatt.gifの説明

属性を選択し、次の表を参照して、「一般」タブの各フィールドにデータを入力します。

フィールド 説明
修飾子
アクセス修飾子 属性がどの範囲でアクセス可能であるかを指定します。
その他の修飾子 属性が「final」「static」「transient」または「volatile」のいずれであるかを指定します。

注意: 選択した修飾子によっては、他の修飾子が使用できない場合があります。

タイプ情報
タイプ 「参照」をクリックし、属性に対するクラスおよびパッケージを選択します。
次元 配列の長さを指定します。「タイプ」が配列の場合のみ、このフィールドを使用します。

図4-4 「属性」-「アクセッサ」タブ

clinatta.gifの説明が続く
図clinatta.gifの説明

属性を選択し、次の表を参照して、「アクセッサ」タブの各フィールドにデータを入力します。

フィールド 説明
getメソッド 属性に対するget( )メソッドを選択します。
setメソッド 属性に対するset( )メソッドを選択します。

属性に対するgetまたはsetメソッドを生成するには、「メソッドの生成」をクリックします。

「メソッド」タブ

新規メソッドを追加するには、「追加」をクリックします。

既存のメソッドを削除するには、メソッドを選択し、「削除」をクリックします。

図4-5 「メソッド」タブ

clinmeth.gifの説明が続く
図clinmeth.gifの説明

メソッドを選択し、次の表を参照して、各フィールドにデータを入力します。

フィールド 説明
修飾子
アクセス修飾子 属性がどの範囲でアクセス可能であるかを指定します。
その他の修飾子 属性が「final」「static」「transient」または「volatile」のいずれであるかを指定します。

注意: 選択した修飾子によっては、他の修飾子が使用できない場合があります。

戻りタイプ 「参照」をクリックし、クラスおよびパッケージを選択します。
次元 配列の長さを指定します(戻りタイプ)。
パラメータ 「追加」をクリックし、メソッドにパラメータを含めます。

注意: パラメータは、リストの順序でロードされます。


問合せおよび名前付きファインダの指定

「問合せ」タブを使用して、データベース・アクセスに使用するEJB QL問合せ、SQL問合せおよびファインダを指定します。「問合せ」タブには、「名前付き問合せ」および「カスタムSQL」という2つのタブが含まれています。

2.0 CMPプロジェクトの場合、ejb-jar.xmlファイルに問合せリストが格納されます。問合せをファイル内で定義してOracleAS TopLink Mapping Workbenchに読み取るか、「問合せ」タブで定義してファイルに書き込むことができます。詳細は、「ejb-jar.xmlファイルへの書込み」を参照してください。

問合せを作成するには:

  1. 「ナビゲータ」ペインでディスクリプタを選択します。

  2. 「エディタ」ペインの「問合せ」タブをクリックします。

  3. 次の中から、適切なタブを選択します。

    • カスタムSQL

    • 名前付き問合せ

カスタムSQL

OracleAS TopLink Mapping WorkbenchでカスタムSQL問合せを作成するには、次の手順を実行します。2.0 CMPプロジェクトの場合、SQLはejb-jar.xmlファイルに書き込まれません。

カスタムSQL問合せを作成するには:

  1. 「ナビゲータ」ペインでディスクリプタを選択します。

  2. 「エディタ」ペインの「問合せ」タブをクリックします。

  3. 「カスタムSQL」タブをクリックします。

    図4-6 「問合せ」-「カスタムSQL」タブ

    qrsqltab.gifの説明が続く
    図qrsqltab.gifの説明

  4. 適切なSQL機能のタブをクリックし、ディスクリプタに対するアクションを制御する問合せオブジェクトまたはSQL文字列を入力します。

タブ 説明
挿入 SessionクラスのinsertObject()メソッドを生成します。
更新 SessionクラスのupdateObject()メソッドを生成します。

アプリケーションでオプティミスティック・ロックを使用している場合に、ディスクリプタの更新文字列をカスタマイズする際には、オブジェクトの読取り後にバージョン・フィールドが変更された場合、行が書き込まれないようにする必要があります。また、行が書き込まれる場合、更新文字列によってバージョン・フィールドを増分する必要があります。さらに、更新文字列は、データベースの行カウントを維持する必要があります。

削除 SessionクラスのdeleteObject()メソッドを生成します。
読取り SessionクラスのreadObject()メソッドを生成します。

ディスクリプタのオブジェクトの読取り問合せのカスタマイズは、主キー式をパラメータとしてとるreadObject()でのみ有効です。その他の式が使用された場合、OracleAS TopLinkによって動的SQLが生成されます。その他のオブジェクトの読取り問合せに対して、名前付き問合せを追加で定義できます。

すべて読取り SessionクラスのreadAllObjects()メソッドを生成します。

ディスクリプタのすべて読取り問合せのカスタマイズは、クラスをパラメータとしてとるreadAll()でのみ有効です。クラスと式をとるreadAll()では無効です。その結果、問合せはすべての単一のインスタンスを読み取ります。その他のすべて読取り問合せに対して、名前付き問合せを追加で定義できます。



注意:

OracleAS TopLink Mapping Workbenchでは、入力されたSQLコードは検証されません。コードは、特定のデータベース・タイプで定義されます。

カスタム問合せ

5つのカスタム問合せタブを制御するには、特定のディスクリプタに対する独自の問合せオブジェクトまたはSQL文字列を含めることができます。各データベースに対するSQL文字列は、データベースのタイプによって定義されます。たとえば、オブジェクトを読み取るストアド・プロシージャでは、次の文字列を使用できます。

Read_Employee(EMP_ID=>4653)

問合せマネージャには、オブジェクトを読み取るために次の文字列が必要です。

Read_Employee(EMP_ID=>#EMP_ID)

この問合せでは、ハッシュ文字(#)でSQL文字列内の引数EMP_IDをバインドします。

名前付き問合せ

名前付き問合せを使用して、データベースにアクセスするためのSQL問合せ、EJB QL問合せまたはOracleAS TopLinkの式問合せを指定します。EJB QLは、オブジェクト・モデルの観点では、問合せを表す宣言型の言語です。詳細は、EJB仕様と『Oracle Application Server TopLinkアプリケーション開発者ガイド』を参照してください。

名前付き問合せを作成するには:

  1. 「ナビゲータ」ペインでディスクリプタを選択します。

  2. 「エディタ」ペインの「問合せ」タブをクリックします。

  3. 「問合せ」タブの「名前付き問合せ」タブをクリックします。「名前付き問合せ」タブには、次のタブが含まれています。

    • 「名前付き問合せ」「一般」タブ

    • 「名前付き問合せ」「書式」タブ

    • 「名前付き問合せ」「オプション」タブ

    図4-7 「名前付き問合せ」タブ

    qrnmdfnd.gifの説明が続く
    図qrnmdfnd.gifの説明

  4. 新規名前付き問合せを作成するには、「追加」をクリックします。「名前付き問合せの追加」ダイアログ・ボックスが表示されます。

    図4-8 名前付き問合せの追加

    addnmdqr.gifの説明が続く
    図addnmdqr.gifの説明

  5. (EJBディスクリプタに対して)問合せのタイプを選択し、問合せの名前を入力して、[Enter]を押します。OracleAS TopLink Mapping Workbenchで、問合せが「名前付き問合せ」タブに追加されます。


    注意:

    OracleAS TopLink予約ファインダの場合、ドロップダウン・ボックスを使用して、予約名を選択します。OracleAS TopLinkにより、実行時に問合せが生成されます。

  6. 「一般」タブをクリックし、問合せのタイプおよびパラメータを指定します。

    図4-9 「名前付き問合せ」の「一般」タブ

    qrnmdgen.gifの説明が続く
    図qrnmdgen.gifの説明

  7. 次の表を参照して、「一般」タブの各フィールドにデータを入力します。

    フィールド 説明
    ディスクリプタ・エイリアス ディスクリプタ・クラスのエイリアス。このフィールドは、EJBファインダの場合のみ使用します。
    名前 問合せの名前。問合せ名の接頭辞によって問合せのタイプが指定されます。
    • find - EJB 2.0

    • ejbSelect - EJB Select

    OracleAS TopLink予約ファインダの名前は変更できません。

    タイプ ドロップダウン・リストを使用して、ReadObjectまたはReadAll問合せのいずれであるかを指定します。
    パラメータ 特定のタイプのパラメータをこの問合せに追加するには、「追加」をクリックします。

    注意: EJBディスクリプタにはパラメータを追加できません。


  8. 「書式」タブをクリックして、名前付き問合せおよびその書式を指定します。

    図4-10 「名前付き問合せ」の「書式」タブ

    qrnmdfor.gifの説明が続く
    図qrnmdfor.gifの説明

  9. 次の表を参照して、「書式」タブの各フィールドにデータを入力します。

    フィールド 説明
    この名前付き問合せでOracleAS TopLinkの式を使用することを指定します。
    SQL この名前付き問合せがSQL問合せであることを指定します。
    EJBQL この名前付き問合せがEJB QL問合せであることを指定します。
    問合せ文字列 問合せを入力します。OracleAS TopLink Mapping Workbenchでは、問合せ文字列は検証されません。

    注意: 「式」の場合、問合せ文字列をダブルクリックするか、「編集」をクリックして、問合せ文字列を作成または編集します。詳細は、「式の作成」を参照してください。


  10. 「オプション」タブをクリックし、名前付き問合せの追加オプションを指定します。


    注意:

    このパネルのオプションが無効の場合、Mapping Workbenchでは親で指定されたオプションが使用されます。

    図4-11 「名前付き問合せ」の「オプション」タブ

    qrnmdopt.gifの説明が続く
    図qrnmdopt.gifの説明

  11. 次の表を参照して、「オプション」の各フィールドにデータを入力します。

    フィールド 説明
    アイデンティティ・マップの問合せ結果のリフレッシュ 問合せ結果のオブジェクトの属性をリフレッシュするrefreshIdentityMapResults()メソッドを指定します。
    ステートメント・キャッシュ 問合せに対するcacheStatement()メソッドを指定します。
    • 「未定義」を選択した場合、問合せではプロジェクトのデフォルトの設定が使用されます(「デフォルト・プロパティの使用」を参照)。

    • 「True」を指定した場合、「パラメータのバインド」「True」にする必要があります。

    パラメータのバインド 問合せに対するbindAllParameters()メソッドを指定します。
    • 「未定義」を選択した場合、問合せではプロジェクトのデフォルトの設定が使用されます(「デフォルト・プロパティの使用」を参照)。

    キャッシュの使用方法 データベースにアクセスする前に問合せがキャッシュを確認するかどうか、およびその方法を選択します。
    インメモリー問合せでのインダイレクション インスタンス化されていないインダイレクションにアクセスした際に問合せがどのように反応するかを指定します。InMemoryQueryIndirectionPolicyポリシーを指定する場合にこのオプションを使用します。


    注意:

    これらのオプションは、findOneByQueryおよびfindManyByQueryでは使用できません。

  12. これ以外の名前付き問合せオプションを指定するには、「詳細」をクリックします。

    図4-12 詳細な問合せオプション

    advqropt.gifの説明が続く
    図advqropt.gifの説明

  13. 次の表を参照して各フィールドにデータを入力し、「OK」をクリックします。

フィールド 説明
キャッシュの維持 名前付き問合せに対するmaintainCache()を指定します。
ラッパー・ポリシーの使用 名前付き問合せに対するsetWrapperPolicy()を指定します。
SQL文を一度だけ作成 名前付き問合せに対するsetShouldPrepare()を指定します。デフォルトでは、OracleAS TopLinkにより問合せが最適化され、SQLが1度だけ生成されます。次のような引数に基づいた動的SQLを要求する特定のタイプの問合せに対しては、このオプションを無効にする必要がある場合があります。
  • 引数値がNULLの可能性がある場合にequalを使用する式。これにより、= NULLではなくIS NULLを要求するデータベースで問題が発生する場合があります。

  • inおよびパラメータ・バインドを使用する式。in値は個々にバインドする必要があるので、これにより問題が発生します。

問合せ結果のキャッシュ 問合せに対するcacheQueryResults()を指定します。OracleAS TopLinkでは、読取り問合せにより以前に返されたオブジェクトの内部キャッシュを保持できます。
リモート・アイデンティティ・マップの問合せ結果のリフレッシュ 問合せに対するrefreshRemoteIdentityMapResult()メソッドを指定します。OracleAS TopLinkでは、問合せ結果のオブジェクトの属性をリフレッシュできます。カスケードする場合、OracleAS TopLinkにより、オブジェクトのプライベート部分もリフレッシュされます。
ペシミスティック・ロック 問合せに対するペシミスティック・ロック・ポリシーを指定します。
DISTINCT句 DISTINCTが設定されている場合、OracleAS TopLinkでDISTINCT句が出力されるかどうかを指定します。
問合せタイムアウト 指定した秒数の経過後、問合せをタイムアウト(強制終了)にするかどうかを指定します。
最大行 問合せで結果を指定の行数に制限するかどうかを指定します。問合せが非常に多くのオブジェクトを返す可能性がある場合に、このオプションを使用します。

名前付き問合せの詳細は、『Oracle Application Server TopLinkアプリケーション開発者ガイド』を参照してください。

式の作成

式ビルダーを使用して、名前付き問合せ用にOracleAS TopLinkの式を作成します。

式を作成するには:

  1. 「名前付き問合せ」「書式」タブ(図4-10を参照)で、「編集」をクリック(または問合せ文字列をダブルクリック)します。「式ビルダー」ダイアログ・ボックスが表示されます。

    図4-13 式ビルダー



    図4-13は、次のユーザー・インタフェース・コンポーネントを示しています。

    1. 式ツリー

    2. 引数

  2. 新規の式を作成するには、「追加」または「ネストの追加」をクリックします。OracleAS TopLinkにより、各ノードおよびネストされたノードに順序番号が割り当てられます。

    既存の式を削除するには、「削除」をクリックします。

  3. ノードを選択し、「論理演算子」ドロップダウン・リストを使用して、ノードに対する演算子を指定します(ANDORNOT ANDまたはNOT OR)。

  4. 式を選択し、次の表を参照して、各フィールドにデータを入力します。

    フィールド 説明
    第1引数 「編集」をクリックし、第1引数に対する問合せキーを選択します。詳細は、「引数の追加」を参照してください。
    演算子 OracleAS TopLinkによる式の評価方法を指定します。有効な演算子には、EQUALNOT EQUALEQUAL IGNORE CASEGREATER THANGREATER THAN EQUALLESS THANLESS THAN EQUALLIKENOT LIKELIKE IGNORE CASEIS NULLおよびNOT NULLがあります。
    第2引数 第2引数を指定します。
    • リテラル: 「編集」をクリックし、リテラル・タイプおよび値を選択します。

    • 問合せキー: 「編集」をクリックし、問合せキーを選択します。

    • パラメータ: 以前に作成されたパラメータの引数を選択します。

    詳細は、「引数の追加」を参照してください。


  5. 「OK」をクリックします。OracleAS TopLink Mapping Workbenchで、式が「名前付き問合せ」タブに追加されます。

引数の追加

各式には、評価対象の要素(引数)が含まれます。IS NULLまたはNOT NULL演算子を使用する式の場合、必要な引数は1つのみです。

新規引数を追加するには、次の手順を実行します。

  1. 既存の式を選択するか、新規の式を名前付き問合せに追加する場合は「追加」(または「ネストの追加」)をクリックします。

  2. 「第1引数」で、「編集」をクリックします。「問合せキーの選択」ダイアログ・ボックスが表示されます。

    図4-14 問合せキーの選択



  3. 属性を選択し、問合せがNULL値を許容するかどうかを指定して、「OK」をクリックします。

  4. 「演算子」ドロップダウン・リストを使用して、OracleAS TopLinkによる式の評価方法を指定します。

  5. 「第2引数」で、「リテラル」「問合せキー」または「パラメータ」を選択し、「編集」をクリックします。

    • 「リテラル」引数の場合、「リテラル・タイプおよび値の編集」ダイアログ・ボックスが表示されます。リテラル・タイプ(文字列または整数など)および値を選択します。

    • 「問合せキー」引数の場合、「問合せキーの選択」ダイアログ・ボックスが表示されます(図4-14を参照)。

    • 「パラメータ」引数の場合、ドロップダウン・リストを使用して、「名前付き問合せ」の「一般」タブで作成された特定のパラメータを選択します(図4-9を参照)。

各式またはサブ式に対し、この手順を繰り返します。

例4-1 式の例

次に式を示します。

AND
  1.manager(Allows Null).lastName EQUAL "Jones"
  2.OR
    2.1.projects.name LIKE "BETA"
    2.2.projects.id EQUAL "4"
  3.OR
    3.1.AND
      3.1.1.address.country EQUAL "Canada"
      3.1.2.salary GREATER THAN "25000"
    3.2.AND
      3.1.1.address.country EQUAL "United States"
      3.1.2.salary GREATER THAN "37500"

この式では、次のような従業員が検索されます。

  • 姓がJonesのマネージャがいるか、マネージャがいない、かつ

  • BetaまたはID 4というプロジェクトに携わっている、かつ

  • カナダに住み、給与が25,000超、またはアメリカに住み、給与が37,500超の従業員

問合せキー

OracleAS TopLink Mapping Workbenchでは、フィールド名のエイリアスとして問合せキーを使用します。エイリアスを使用することにより、OracleAS TopLinkの式で、データベース管理システム固有のフィールド名のかわりに、Javaの名前を使用できます。詳細は、「問合せキーの自動生成」を参照してください。

「問合せキー」タブを使用して、ユーザー定義の問合せの作成や、自動生成された問合せキーを使用します。

問合せキーの指定

「問合せキー」タブを使用して、ディスクリプタに対する問合せキーを指定します。

問合せキーを指定するには:

  1. 「ナビゲータ」ペインでディスクリプタを選択します。「エディタ」ペインにプロパティが表示されます。

  2. 「エディタ」ペインの「問合せキー」タブをクリックします。

    図4-15 「問合せキー」タブ



  3. 新規問合せキーを追加するには、「追加」をクリックします。

    既存の問合せキーを削除するには、問合せキーを選択し、「削除」をクリックします。

    既存の問合せキーの名前を変更するには、問合せキーを選択し、「名前の変更」をクリックします。

  4. 「フィールド」ドロップダウン・リストを使用して、問合せで使用する表のフィールドを選択します。

EJBディスクリプタ情報の表示

「EJB情報」タブを使用して、EJBディスクリプタの情報を(ejb-jar.xmlファイルから)表示します。このタブは、EJBディスクリプタの場合のみ使用できます。

EJBディスクリプタ情報を表示するには:

  1. 「ナビゲータ」ペインで、EJBディスクリプタを選択します。

  2. 「エディタ」ペインの「EJB情報」タブをクリックします。

    図4-16 「EJB情報」タブ



  3. 次の表を参照して、各フィールドにデータを入力します。

フィールド 説明
EJB名 ベース名。EJB 2.0を使用している場合、これはejb-jar.xmlファイルの<ejb-name>要素で指定されています。
主キー・クラス 主キー。EJB 2.0を使用している場合、これはejb-jar.xmlファイルの<prim-key-class>要素で指定されています。
ローカル・インタフェース ローカル・インタフェース。EJB 2.0を使用している場合、これはejb-jar.xmlファイルの<local>要素で指定されています。
ローカル・ホーム・インタフェース ローカル・ホーム・インタフェース。EJB 2.0を使用している場合、これはejb-jar.xmlファイルの<local-home>要素で指定されています。
リモート・インタフェース リモート・インタフェース。EJB 2.0を使用している場合、これはejb-jar.xmlファイルの<remote>要素で指定されています。
リモート・ホーム・インタフェース リモート・ホーム・インタフェース。EJB 2.0を使用している場合、これはejb-jar.xmlファイルの<home>要素で指定されています。


注意:

EJB 2.0の永続性を使用している場合、これらのフィールドは表示専用です。