ヘッダーをスキップ
Oracle TopLink開発者ガイド
10g(10.1.3.1.0)
B31861-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

18 プロジェクトの作成

この章の内容は次のとおりです。

使用可能な様々なプロジェクト・タイプの詳細は、「TopLinkプロジェクト・タイプ」を参照してください。

プロジェクト作成の概要

プロジェクトは、TopLink WorkbenchまたはJavaコードを使用して作成できます。

TopLink Workbenchを使用してプロジェクトを作成し、実行時に使用するプロジェクトのデプロイXMLまたはJavaソース・バージョンを生成することをお薦めします。詳細は、「TopLink Workbenchの使用」を参照してください。

また、プロジェクトはJavaコードでも作成できます。XML以外のレコード・タイプを使用するEISプロジェクトの場合は、Javaコードを使用する必要があります。詳細は、「Javaの使用」および『Oracle Application Server TopLink API Reference』を参照してください。

次のいずれかの条件に合致する場合、TopLinkを使用してプロジェクトを作成できます。

TopLink Workbenchの使用

TopLink Workbenchを使用してプロジェクトを作成する場合は、すべてのプロジェクト情報は、プロジェクト・ファイル( .mwpファイル)に格納されます。このファイルは、Javaクラスがデータベース表またはXML要素にマップする方法についての情報を含む追加のXMLデータ・ファイルを参照します。

TopLink Workbenchを使用して、TopLinkランタイムによって読み取られるTopLinkプロジェクトXMLファイル(つまり、デプロイXMLファイル)としてこの情報をエクスポートできます。また、この情報をJavaクラスとしてエクスポートすることもできます。詳細は、「プロジェクト情報のエクスポート」を参照してください。

TopLink Workbenchは、プロジェクトおよびその内容をナビゲータ・ウィンドウに表示します。プロジェクトを選択すると、その属性がエディタ・ウィンドウに表示されます。詳細は、「ナビゲータの使用」を参照してください。TopLink Workbenchは次のプロジェクト・タイプをサポートします。

  • リレーショナル・データベース・プロジェクト・アイコン
    リレーショナル・プロジェクト

  • XMLプロジェクト・アイコン
    XMLプロジェクト

  • EISプロジェクト・アイコン
    EISプロジェクト

新規TopLink Workbenchプロジェクトの作成

この項では、新規TopLink Workbenchプロジェクトの作成について説明します。既存の永続アプリケーション(OC4Jなど)から新規プロジェクトを作成する場合は、第7章「TopLinkとアプリケーション・サーバーの統合」を参照してください。JAXBから新規プロジェクトを作成する場合は、「TopLinkによるJava Architecture for XML Binding(JAXB)のサポート」を参照してください。

新規TopLink Workbenchプロジェクトを作成するには、次の手順を実行します。

  1. 「新規プロジェクト」アイコン
    ツールバーの「新規」をクリックして「プロジェクト」を選択します。「新規TopLink Workbenchプロジェクトの作成」ダイアログ・ボックスが表示されます。

    メニューから「ファイル」「新規」「プロジェクト」の順に選択して、新規プロジェクトを作成することもできます。

    図18-1 「新規TopLink Workbenchプロジェクトの作成」ダイアログ・ボックス

    図18-1の説明が続きます
    「図18-1 「新規TopLink Workbenchプロジェクトの作成」ダイアログ・ボックス」の説明

次の情報を参照し、このダイアログ・ボックスの各フィールドにデータを入力します。

フィールド 説明
名前 TopLink Workbenchプロジェクトの名前を入力します。このプロジェクト名は.mwpファイルの名前にもなります。
データ・ソース この領域の各オプションを使用して、作成するプロジェクトのタイプおよびそのデータ・ソースを指定します。
    データベース 「データベース」を選択すると、リレーショナル・データベース用にリレーショナル・プロジェクトが作成されます。

「プラットフォーム」リストを使用して、特定のデータベース・プラットフォームを選択します。

詳細は、「リレーショナル・プロジェクト」を参照してください。

    EIS 「EIS」を選択すると、XMLレコードを使用して、非リレーショナル・データ・ソース用にEISプロジェクトが作成されます。

「プラットフォーム」リストを使用して、使用するJ2Cアダプタを指定します。

詳細は、「EISプロジェクト」を参照してください。

   XML 「XML」を選択すると、XMLスキーマ用に、非トランザクション型で非永続的なXMLプロジェクトが作成されます。

あるいは、XMLプロジェクトのみでなくオブジェクト・モデル・クラスも一緒に生成することもできます(「XMLスキーマからのXMLプロジェクトの作成」を参照)。

詳細は、「XMLプロジェクト」を参照してください。


プロジェクトについては、続いて次の操作があります。

Javaの使用

Javaコードを使用してプロジェクトを作成するには、次の手順を実行します。

  1. oracle.toplink.sessions.Projectクラスを拡張するプロジェクト・クラスを実装します(例18-1を参照)。

  2. プロジェクト・クラスをコンパイルします。

例18-1 TopLinkプロジェクトのコードによる指定

/**
* The class EmployeeProject is an example of an Oracle TopLink project defined in Java code. 
The individual parts of the project - the Login and the descriptors, 
are built inside of methods that are called by the constructor. 
Note that EmployeeProject extends the class oracle.toplink.sessions.Project
*/
public class EmployeeProject extends oracle.toplink.sessions.Project {

/**
* Supply a zero-argument constructor that initializes all aspects of the project. 
Make sure that the login and all the descriptors are initialized and added to the project. 
Project-level properties, such as the name of the project, should be specified here
*/
public EmployeeProject() {
  setName("EmployeeProject");
  applyLogin();

  addDescriptor(buildAddressDescriptor());
  addDescriptor(buildEmployeeDescriptor());
  addDescriptor(buildPhoneNumberDescriptor());
}

// Data source information
public void applyLogin() {
  DatabaseLogin login = new DatabaseLogin();

  // use platform appropriate for underlying database
  login.usePlatform(
    new oracle.toplink.platform.database.oracle.Oracle9Platform());
  login.setDriverClassName("oracle.jdbc.OracleDriver");
  login.setConnectionString("jdbc:oracle:thin:@HOST:PORT:SID");
  login.setUserName("USER NAME");
  login.setEncryptedPassword("PASSWORD, ENCRYPTED");

  // Configuration Properties
    setDatasourceLogin(login);
}

/**
* Descriptors are built by defining table info, 
setting properties (caching, etc.) and by adding mappings to the descriptor
*/

// SECTION: DESCRIPTOR
public ClassDescriptor buildAddressDescriptor() {
  RelationalDescriptor descriptor = new RelationalDescriptor();

  // specify the class to be made persistent
  descriptor.setJavaClass(examples.servletjsp.model.Address.class);

  // specify the tables to be used and primary key
  descriptor.addTableName("ADDRESS");
  descriptor.addPrimaryKeyFieldName("ADDRESS.ADDRESS_ID");

  // Descriptor Properties
  descriptor.useSoftCacheWeakIdentityMap();
  descriptor.setIdentityMapSize(100)
  descriptor.useRemoteSoftCacheWeakIdentityMap()
  descriptor.setRemoteIdentityMapSize(100)
  descriptor.setSequenceNumberFieldName("ADDRESS.ADDRESS_ID")
  descriptor.setSequenceNumberName("ADD_SEQ");
  descriptor.setAlias("Address");

  // Mappings
  DirectToFieldMapping cityMapping = new DirectToFieldMapping();
  cityMapping.setAttributeName("city");
  cityMapping.setFieldName("ADDRESS.CITY");
  descriptor.addMapping(cityMapping);

  // … Additional mappings are added to the descriptor using the addMapping() method

return descriptor;}


注意:

Javaプロジェクト・クラスは、TopLink Workbenchを使用して既存のプロジェクトから作成します。これがカスタム・プロジェクト・クラスの開始点になります。詳細は、「プロジェクトJavaソースのエクスポート」を参照してください。

既存のオブジェクト・モデルおよびデータ・モデルに対するプロジェクトの作成

オブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)およびデータ・モデル(既存のデータベース・スキーマなど)がともに既存の場合、次の手順を使用してTopLinkプロジェクトを作成します。

この手順は、リレーショナル・プロジェクト・タイプに適用されます。

TopLink Workbenchの使用

  1. プロジェクトを作成します(「TopLink Workbenchの使用」を参照)。

  2. プロジェクト・クラスパスを構成します(「プロジェクト・クラスパスの構成」を参照)。

  3. クラスをインポートします(「クラスのインポートおよび更新」を参照)。

  4. データベース表をインポートします(「データベースからの表のインポート」を参照)。

  5. プロジェクト・オプションを構成します(第19章「プロジェクトの構成」を参照)。

既存のオブジェクト・モデルからのプロジェクトの作成

既存のオブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)はあるが、対応するデータ・モデルがない場合は、次の手順を使用してTopLinkプロジェクトを作成し、対応するデータ・モデルを自動生成します。

この手順は、リレーショナル・プロジェクトに適用されます。

TopLink Workbenchの使用

  1. プロジェクトを作成します(「TopLink Workbenchの使用」を参照)。

  2. プロジェクト・クラスパスを構成します(「プロジェクト・クラスパスの構成」を参照)。

  3. クラスをインポートします(「クラスのインポートおよび更新」を参照)。

  4. データベース表を生成します。詳細は、次を参照してください。

  5. プロジェクト・オプションを構成します(第19章「プロジェクトの構成」を参照)。

既存のデータ・モデルからのプロジェクトの作成

既存のデータ・モデル(データベース・スキーマなど)はあるが、対応するオブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)がない場合は、次の手順を使用してTopLinkプロジェクトを作成し、対応するオブジェクト・モデルを自動生成します。

この手順は、リレーショナル・プロジェクトに適用されます。

TopLink Workbenchの使用

  1. プロジェクトを作成します(「TopLink Workbenchの使用」を参照)。

  2. データベース表をインポートします(「データベースからの表のインポート」を参照)。

  3. クラスを生成します。詳細は、次のいずれかを参照してください。

  4. プロジェクト・オプションを構成します(第19章「プロジェクトの構成」を参照)。

XMLスキーマからのXMLプロジェクトの作成

既存のデータ・モデル(XMLスキーマ文書)はあるが、対応するオブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)がない場合は、次の手順を使用してTopLinkプロジェクトを作成し、対応するオブジェクト・モデルを自動生成します。


注意:

XSDおよびオブジェクト・モデル・クラスが両方ともある場合、「TopLink Workbenchの使用」で説明している手順を使用して、XMLプロジェクトを作成できます。

TopLink JAXBコンパイラでは、必要なJAXBファイルおよびTopLinkファイルがともにXMLスキーマ(XSD)文書から自動生成されるため、TopLinkによるJAXBアプリケーション開発が容易になります。生成後は、JAXBオブジェクト・モデルを再コンパイルしなくても、TopLink Workbenchプロジェクトを開いてXMLマッピングを微調整できます。

TopLink JAXBコンパイラは、TopLink Workbenchから(「TopLink Workbenchの使用」を参照)、またはコマンドラインから(「コマンドラインの使用」を参照)使用できます。TopLink Workbenchを使用することをお薦めします。


注意:

生成されたクラスをコンパイルする前に、IDEクラスパスに<ORACLE_HOME>\lib\xml.jarを含むよう構成してください。たとえば、第6章「統合開発環境の使用」を参照してください。

詳細は、次を参照してください。

TopLink Workbenchの使用

JAXBを使用してXMLスキーマから新規のマップされたTopLink Workbenchを作成するには、次の手順を実行します。

  1. TopLink Workbenchから、「ファイル」「新規」「プロジェクト」「XMLスキーマ(JAXB)から」の順に選択します。

    図18-2 「JAXBを使用してMapping Workbenchプロジェクトを生成」ダイアログ・ボックス

    図18-2の説明が続きます
    「図18-2 「JAXBを使用してMapping Workbenchプロジェクトを生成」ダイアログ・ボックス」の説明

次の情報を参照し、このダイアログ・ボックスの各フィールドにデータを入力します。

フィールド 説明
作成元 この領域のフィールドを使用して、既存のJAXB情報を指定します。
    スキーマ・ファイル 「参照」をクリックし、XSDファイルの完全修飾パスを選択します。
    JAXBカスタマイズ・ファイル(オプション) これはオプション設定です。JAXBコンパイラのデフォルト動作をオーバーライドするために使用する標準JAXB構成ファイルがある場合に、このオプションを使用できます。JAXBカスタマイズ・ファイルには、XSDコンポーネントとそのJava表現の間のデフォルト・バインドをカスタマイズするためのバインド宣言が含まれています。
作成先 この領域のフィールドを使用して、TopLink Workbenchプロジェクトの場所およびオプションを指定します。
    出力ディレクトリ 「参照」をクリックして、生成されたファイルが書き込まれるディレクトリのパスを選択します。プロジェクトで使用されるすべてのパスは、このディレクトリからの相対パスです。
        出力ソース・ディレクトリ 「参照」をクリックして、生成されたインタフェース、実装クラスおよびデプロイ・ファイルが書き込まれるディレクトリのパス(「出力ディレクトリ」からの相対パス)を選択します。デフォルト: 指定された出力ディレクトリの下位に生成されるsourceという名前のディレクトリ。
        出力Workbenchプロジェクト・ディレクトリ 「参照」をクリックして、TopLink Workbenchプロジェクト・ファイルが書き込まれるディレクトリのパス(「出力ディレクトリ」からの相対パス)を選択します。デフォルト: 指定された出力ディレクトリの下位に生成されるmwという名前のディレクトリ。
    生成されたインタフェースのパッケージ名 生成されたインタフェースが属するパッケージのオプション名。これによりコンテキスト・パスが定義されます。このオプション名が指定されない場合、jaxbderived.<schema name>というパッケージ名が使用されます。ただし、<schema name>「スキーマ・ファイル」フィールドで指定されたスキーマの名前です。
    生成された実装クラスのパッケージ名 生成された実装クラスが属するパッケージのオプション名。これによりコンテキスト・パスが定義されます。このオプション名が指定されない場合、jaxbderived.<schema name>というパッケージ名が使用されます。ただし、<schema name>「スキーマ・ファイル」フィールドで指定されたスキーマの名前です。

TopLink JAXBコンパイラは、JAXB固有ファイル(「JAXB固有の生成ファイルの概要」を参照)およびTopLink固有ファイル(「TopLink固有の生成ファイルの概要」を参照)を生成します。

オプションの操作には、生成されたTopLink Workbenchプロジェクトを開くこと(「TopLink Workbenchプロジェクト」を参照)、生成されたマッピングおよびディスクリプタのカスタマイズ、TopLinkプロジェクトXMLの再エクスポートがあります。


注意:

生成されたクラスをコンパイルする前に、IDEクラスパスに<ORACLE_HOME>\lib\xml.jarを含むよう構成してください。たとえば、第6章「統合開発環境の使用」を参照してください。

コマンドラインの使用

コマンドラインからJAXBを使用して、XMLスキーマから新規のマップされたOracle TopLink Workbenchプロジェクトを作成するには、tljaxb.cmdまたはtljaxb.shファイル(<ORACLE_HOME>/toplink/binディレクトリ内にある)を次のように使用します。

  1. テキスト・エディタを使用して、tljaxb.cmdまたはtljaxb.shファイルを編集し、プロキシ設定を行います(必要な場合)。

    URLによって別のスキーマをインポートするスキーマを使用し、プロキシの背後で操作している場合、例18-2または例18-3に示されているラインを編集してコメントを外し、プロキシ・ホスト(名前またはIPアドレス)およびポートを設定します。

    例18-2 tljaxb.cmdによるプロキシ設定

    @REM set JVM_ARGS=%JVM_ARGS% -DproxySet=true -Dhttp.proxyHost= -Dhttp.proxyPort=
    
    

    例18-3 tljaxb.shによるプロキシ設定

    # JVM_ARGS="${JVM_ARGS} -DproxySet=true -Dhttp.proxyHost= -Dhttp.proxyPort="
    
    
  2. tljaxb.cmdまたはtljaxb.shファイル(<ORACLE_HOME>/toplink/binディレクトリ内にある)を実行します。

    TopLink JAXBコンパイラは、JAXB固有ファイル(「JAXB固有の生成ファイルの概要」を参照)およびTopLink固有ファイル(「TopLink固有の生成ファイルの概要」を参照)を生成します。

    例18-4は、Toplink JAXBコンパイラを使用してスキーマからオブジェクト・モデルを生成する方法を示しています。表18-1は、コンパイラの引数をまとめたものです。

    例18-4 tljaxb.cmdによるスキーマからのオブジェクト・モデルの生成

    tljaxb.cmd -sourceDir ./app/src -generateWorkbench -workbenchDir ./app/mw  -schema purchaseOrder.xsd -targetPkg examples.ox.model.if -implClassPkg examples.ox.model.impl
    

    表18-1 TopLink JAXBバインド・コンパイラの引数

    引数 説明 オプションか

    -help

    使用方法(この情報)を出力します。

    -version

    TopLink JAXBコンパイラのリリースのバージョンを出力します。

    -sourceDir

    生成されたインタフェース、実装クラスおよびデプロイ・ファイルが書き込まれるディレクトリのパス。

    デフォルト: 指定された出力ディレクトリの下位に生成されるsourceという名前のディレクトリ。

    -generateWorkbench

    TopLink Workbenchプロジェクトと必要なプロジェクト・ファイルを生成します。省略すると、ランタイム情報のみ生成されます。

    -workbenchDir

    TopLink Workbenchプロジェクト・ファイルが書き込まれるディレクトリのパス。この引数には-generateWorkbench引数が必要です。

    デフォルト: 指定された出力ディレクトリの下位に生成されるmwという名前のディレクトリ。

    -schema

    XSDファイルの完全修飾パス。

    ×

    -targetPkg

    生成されたインタフェースおよびクラスの両方が属するパッケージの名前。これによりコンテキスト・パスが定義されます。実装クラスに別のパッケージを指定するには、-implClassPkg引数を設定します。

    デフォルト: jaxbderived.<schema name>というパッケージ名。ただし、<schema name>-schema引数によって指定されたスキーマの名前です。

    -implClassPkg

    生成された実装クラスが属するパッケージの名前。このオプションが設定される場合、インタフェースは-targetPkg引数によって指定されたパッケージに属します。これによりコンテキスト・パスが定義されます。

    -interface

    インタフェースのみを生成します。この引数はオプションです。

    デフォルト: インタフェースおよび実装クラスを両方とも生成します。

    -verbose

    生成されたインタフェースおよびクラスの名前を出力します。この引数はオプションです。

    デフォルト: 生成されたインタフェースおよびクラスの名前を出力しません。

    -customize

    JAXBコンパイラのデフォルト動作をオーバーライドするために使用できる標準JAXBカスタマイズ・ファイルの完全修飾パスおよびファイル名。


  3. オプションの操作には、生成されたTopLink WorkbenchプロジェクトをTopLink Workbenchで開くこと(「TopLink Workbenchプロジェクト」を参照)、生成されたマッピングおよびディスクリプタのカスタマイズ、TopLinkプロジェクトXMLの再エクスポートがあります。


    注意:

    生成されたクラスをコンパイルする前に、IDEクラスパスに<ORACLE_HOME>\lib\xml.jarを含むよう構成してください。たとえば、第6章「統合開発環境の使用」を参照してください。

EARのOC4Jへの移行によるプロジェクトの作成

アプリケーション・サーバーのデフォルトの永続マネージャとなるようにTopLinkを構成している場合、TopLinkにより、既存のJ2EE CMPアプリケーション・サーバー固有のejb-jar.xmlファイルを必要なtoplink-ejb-jar.xmlファイルに自動的に移行するサポートが提供されます。また、必要となるTopLink Workbenchプロジェクトも提供されます。

この手順は、CMPリレーショナル・プロジェクトにのみ適用されます。

詳細は、「永続性マネージャの移行」を参照してください。

デプロイ時のOC4J EJB CMP EARからのプロジェクトの作成

永続マネージャとしてTopLinkを使用するように構成された、OC4JにデプロイされているCMPアプリケーションの場合、TopLinkのデフォルトのマッピング機能を使用して、すべての永続オブジェクトのディスクリプタおよびマッピングを含むTopLinkプロジェクトを、デプロイ時に自動生成できます。

この手順は、デフォルトの永続マネージャとしてTopLinkを使用するように構成された、OC4JにデプロイされているCMPリレーショナル・プロジェクトにのみ適用されます。

詳細は、「実行時にOC4Jを使用するCMPプロジェクトでのデフォルト・マッピング」を参照してください。

プロジェクトの使用

TopLink Workbenchを使用して、次のプロジェクト機能を実行できます。

TopLink Workbenchプロジェクトの使用方法の詳細は、第19章「プロジェクトの構成」を参照してください。

既存プロジェクトのオープン

既存プロジェクトを開くには、次の手順を実行します。


注意:

大部分の旧リリースのプロジェクトについては、TopLink Workbenchで開くだけで、アップグレードされます。ただし、リリース9.0.3以下のプロジェクトをアップグレードするには、個別のアップグレード手順に従い、パッケージ名変更ツールを使用する必要があります。

詳細は、Oracle TopLinkのリリース・ノートおよび『Oracle TopLinkスタート・ガイド』を参照してください。


  1. 「プロジェクトを開く」ボタン
    ツールバーで「プロジェクトを開く」をクリックします。「ファイルの選択」ダイアログ・ボックスが表示されます。また、メニューから「ファイル」「開く」の順に選択して、プロジェクトを開くこともできます。


    注意:

    「ファイル」メニュー・オプションには、最近開いたプロジェクトのリストが含まれます。これらのプロジェクトの1つを選択して開くことができます。このリストのカスタマイズ方法の詳細は、「一般プリファレンス」を参照してください。

  2. 開こうとしているTopLink Workbenchプロジェクト・ファイル(.mwp)を選択し、「開く」をクリックします。TopLink Workbenchにより、プロジェクトの情報が表示されます。

    EJB情報を含むTopLink Workbenchバージョン3.nプロジェクトを開く場合、「潜在的なEJBディスクリプタ」ダイアログ・ボックスが表示されます。

    図18-3 「潜在的なEJBディスクリプタ」ダイアログ・ボックス

    図18-3の説明が続きます
    「図18-3 「潜在的なEJBディスクリプタ」ダイアログ・ボックス」の説明

  3. EJBディスクリプタとしてインポートする必要があるディスクリプタ、および「プロジェクトの永続性タイプ」を選択し、「OK」をクリックします。

EJB仕様に準拠するメソッドおよび属性が現在のクラス・ディスクリプタ内にない場合は、これらをTopLink Workbenchで生成するかどうかを指定することもできます。

TopLink Workbenchバージョン9.0.3以上のプロジェクトを開く場合、「前のバージョンから新規TopLInk Workbenchプロジェクトを作成」ダイアログ・ボックスが表示されます。

図18-4 「前のバージョンから新規TopLink Workbenchプロジェクトを作成」ダイアログ・ボックス

図18-4の説明が続きます
「図18-4 「前のバージョンから新規TopLink Workbenchプロジェクトを作成」ダイアログ・ボックス」の説明

古いプロジェクトを現行の形式に変換し、プロジェクトをただちに表示するには、「後で保存」をクリックします。

古いプロジェクトを現行の形式に変換し、それを新しい場所に保存してからそのプロジェクトを表示するには、「すぐに保存」をクリックします。

プロジェクトの保存

TopLink Workbenchはプロジェクトを自動的に保存しません。データが失われることがないように、プロジェクトを頻繁に保存してください。

プロジェクトを保存するには、次の手順を実行します。

  1. 「選択したプロジェクトの保存」ボタン
    「すべてのプロジェクトの保存」ボタン
    「保存」または「すべて保存」をクリックして、プロジェクトを保存します。

    メニューから「ファイル」「保存」または「ファイル」「すべて保存」の順に選択して、プロジェクトを保存することもできます。

  2. 保存されていない変更がある場合にTopLink Workbenchを閉じると、「プロジェクトの保存」ダイアログ・ボックスが表示されます。

    図18-5 「プロジェクトの保存」ダイアログ・ボックス

    図18-5の説明が続きます
    「図18-5 「プロジェクトの保存」ダイアログ・ボックス」の説明

  3. 保存するプロジェクトを選択して、「OK」をクリックします。

    「すべて選択」をクリックして、使用可能なプロジェクトをすべて選択します。

新規の名前および場所によるプロジェクトの保存

異なる名前または場所を使用してプロジェクトを保存するには、次の手順を実行します。

  1. 「別名保存」ボタン
    「ファイル」「別名保存」の順に選択します。「別名保存」ダイアログ・ボックスが表示されます。

    図18-6 「別名保存」ダイアログ・ボックス

    図18-6の説明が続きます
    「図18-6 「別名保存」ダイアログ・ボックス」の説明

  2. 名前と場所を選択してから、「保存」をクリックします。


注意:

TopLink Workbenchを使用せずに .mwpファイル名を変更しないでください。プロジェクトの名前を変更するには、「別名保存」オプションを使用します。

プロジェクト・ステータス・レポートの生成

プロジェクト・ステータス・レポートを使用すると、TopLink Workbenchプロジェクトのすべての警告およびエラーのリストが表示されます。このレポートは、問題ウィンドウ(「TopLink Workbenchでの作業」を参照)に似ているものの、エラーをドキュメントまたはメッセージに簡単にコピー、貼付けできる点が異なります。プロジェクト・ステータス・レポートを生成するには、次の手順を実行します。

  1. 「プロジェクト・ステータス・レポート」ボタン
    問題ウィンドウの上にある「問題」ラベルを右クリックして、「問題の報告」を選択します。「プロジェクト・ステータス・レポート」ダイアログ・ボックスが表示され、各TopLink Workbenchプロジェクトのステータスが表示されます。

    メニューから「ツール」「問題の報告」の順に選択して、プロジェクト・ステータス・レポートを生成することもできます。

    図18-7 「問題の報告」ダイアログ・ボックス

    図18-7の説明が続きます
    「図18-7 「問題の報告」ダイアログ・ボックス」の説明

レポートされた各エラーの情報は、第14章「TopLink Workbenchエラー参照」を参照してください。

レポートを別のアプリケーションにコピーするには、「コピー」をクリックします。

プロジェクト情報のエクスポート

実行時にプロジェクトをTopLink Foundation Libraryとともに使用するには、デプロイXMLを生成するか、またはプロジェクトをJavaソース・コードにエクスポートする必要があります。

すべてのプロジェクト・タイプにおいて、TopLink Workbenchにより、次のようなプロジェクト情報の生成およびエクスポートを行えます。


注意:

JavaソースおよびデプロイXMLをエクスポートする際、TopLink Workbenchは、Java Cryptography Extension(JCE)の暗号化機能を使用して(JDK 1.4を使用する場合)、データベース・パスワードを書き込みます(該当する場合)。パスワード暗号化オプションの指定方法の詳細は、「パスワード暗号化の構成」を参照してください。

JDK 1.3以下でのパスワード暗号化使用の詳細は、『Oracle TopLinkスタート・ガイド』を参照してください。


リレーショナル・プロジェクトの場合にかぎり、TopLink Workbenchで、次のようなプロジェクト情報の生成およびエクスポートを行えます。

デプロイXML情報のエクスポート

デプロイXMLファイル(project.xml)をエクスポートするには、次の手順を実行します(詳細は、第8章「デプロイ用TopLinkファイルの作成」を参照)。

  1. デプロイXMLのエクスポート・ボタン
    プロジェクトを選択し、「デプロイXMLのエクスポート」をクリックします。

    ナビゲータでプロジェクトを右クリックしてコンテキスト・メニューから「エクスポート」「プロジェクト配布XML」を選択するか、またはメニューから「選択」「エクスポート」「プロジェクト配布XML」を選択することもできます。

    デプロイおよびソース・コード生成のデフォルト(第19章「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりファイル名およびディレクトリの入力が求められます。


注意:

プロジェクトにエラーが含まれる場合は、project.xmlは無効なものになります。レポートされた各エラーの情報は、第14章「TopLink Workbenchエラー参照」を参照してください。

10gリリース3(10.1.3.1.0)より前のプロジェクトと互換性のあるデプロイXMLファイルを生成するには、「推奨されないダイレクト・マッピングの構成」を参照してください。

モデルJavaソースのエクスポート

プロジェクト・モデルのJavaソース・コードを生成するには、次の手順を実行します。

  1. ナビゲータでプロジェクト、パッケージまたは特定のディスクリプタを右クリックし、そのコンテキスト・メニューから「エクスポート」「モデルJavaソースのエクスポート」の順に選択します。TopLink Workbenchは、選択したディスクリプタごとに.javaファイルを作成します。

    あるいは、メニューから「Workbench」「エクスポート」「モデルJavaソースのエクスポート」または「選択」「エクスポート」「モデルJavaソース」を選択するか、または「クラス」タブで「ソース・コードの生成」をクリックします。詳細は、「クラス情報の構成」を参照してください。

デプロイおよびソース・コード生成のデフォルト(「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりルート・ディレクトリの入力が求められます。


注意:

TopLink WorkbenchプロジェクトでUTF-8キャラクタ・セットを使用する場合は、エクスポートされたJavaソースをコンパイルする際に、互換性のあるJDKを使用する必要があります。

プロジェクトJavaソースのエクスポート

リレーショナル・プロジェクトの場合にかぎり、プロジェクトをJavaソース・コードに変換できます。通常、生成されたJavaコードは、XMLファイルより高速に実行、および簡単にデプロイできます。プロジェクトの特定のディスクリプタに対するモデル・ソースをエクスポートするには、「ディスクリプタに関するJavaコードの生成」を参照してください。リレーショナル・プロジェクトをJavaソースに変換するには、次の手順を実行します。

  1. ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「エクスポート」「プロジェクトJavaソース」を選択します。

    Javaソースへのエクスポート・ボタン
    また、メニューから「Workbench」「エクスポート」「Javaソースのエクスポート」または「選択」「エクスポート」「プロジェクトJavaソース」と選択することもできます。

    デプロイおよびソース・コード生成のデフォルト(「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりプロジェクト・クラス名およびディレクトリの入力が求められます。


注意:

TopLink WorkbenchプロジェクトでUTF-8キャラクタ・セットを使用する場合は、エクスポートされたJavaソースをコンパイルする際に、互換性のあるJDKを使用する必要があります。

プロジェクトにエラーが含まれる場合は、project.xmlファイルは無効なものになります。レポートされた各エラーの情報は、第14章「TopLink Workbenchエラー参照」を参照してください。


10gリリース3(10.1.3.1.0)より前のプロジェクトと互換性のあるJavaソースを生成するには、「推奨されないダイレクト・マッピングの構成」を参照してください。

表作成ファイルのエクスポート

リレーショナル・プロジェクトの場合にかぎり、この手順を使用して、プロジェクトで定義されたデータベース表を生成するJavaソース・コードを作成できます。

  1. ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「エクスポート」「表作成Javaソース」を選択します。

    また、メニューから「Workbench」「エクスポート」「表作成Javaソース」または「選択」「エクスポート」「表作成Javaソース」と選択することもできます。

デプロイおよびソース・コード生成のデフォルト(第19章「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりクラス名およびルート・ディレクトリの入力が求められます。

ejb-jar.xmlファイルの使用

EJB 2.0 CMPを使用するTopLink Workbenchリレーショナル・プロジェクトに関しては、ejb-jar.xmlファイルを使用して、アプリケーション・サーバーの永続情報を格納します。TopLink Workbenchを使用して、既存のejb-jar.xmlファイルからプロジェクトに情報をインポートしたり、プロジェクトからejb-jar.xmlファイルを作成および更新できます。

TopLink Workbenchプロジェクトごとに、1つのejb-jar.xmlファイルが使用されます。このファイル内のエンティティBeanごとに、プロジェクト内にEJBディスクリプタが必要です。すべてのエンティティBeanで、同一の永続性タイプを使用する必要があります。

プロジェクトを変更する際に、ejb-jar.xmlファイルを更新してプロジェクトを反映できます。また、TopLink Workbench以外でejb-jar.xmlファイルを編集した場合は、最新のファイルを反映するようにプロジェクトを更新できます。

表18-2は、ejb-jar.xmlファイルの各フィールドがTopLink Workbenchの各機能にどのように対応しているかを説明しています。

表18-2 ejb-jar.xmlのフィールドとTopLink Workbench

ejb-jar.xmlのフィールド TopLink Workbench

primkey

データベース表の主キーにマップされるBean属性(「主キーの構成」を参照)。

ejb-name、prim-key-class、local、local-home、remote、home、ejb-class

「EJB情報」タブ上のEJBディスクリプタ情報(「EJB情報によるディスクリプタの構成」を参照)。

abstract-schema-name

「ディスクリプタ・エイリアス」フィールド(「ディスクリプタ・エイリアスの構成」を参照)。

cmp-field

「ディスクリプタ情報」タブ上の直接(非リレーションシップ)属性(「共通ディスクリプタ・オプションの構成」を参照)。

cmp-version

「一般」タブ上の「永続性タイプ」フィールド(「永続性タイプの構成」を参照)。persistence-typecontainerに設定されます。

query

「問合せ」タブにリストされる問合せ(「ディスクリプタ・レベルでの名前付き問合せの構成」を参照)。

注意: findByPrimaryKey問合せは、EJB 2.0仕様によりejb-jar.xmlファイル内にはありません。

relationships

1対1、1対多、多対多マッピング(第X部「リレーショナル・マッピング」を参照)。


ejb-jar.xmlファイルへの書込み

現在のTopLink Workbench情報に基づいてejb-jar.xmlファイルを更新するには、次の手順を実行します。


注意:

EJBプリファレンスを使用して、プロジェクトを保存する際にTopLink Workbenchで自動的にejb-jar.xmlファイルを更新するかどうかを指定します。


注意:

.jarファイルに情報を書き込むこともできます。TopLink Workbenchは、自動的にejb-jar.xmlファイルを適切な場所に配置します(META-INF/ejb-jar.xml)。

  1. メニューから「選択」「プロジェクトのejb-jar.xmlへの書込み」の順に選択します。

    ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「プロジェクトのejb-jar.xmlへの書込み」を選択することもできます。

    • 現在、プロジェクトにejb-jar.xmlファイルが含まれていない場合、システムにより新規ファイルの作成が求められます。

    • ejb-jar.xmlファイルを変更したことがシステムにより検出されたが、まだTopLink Workbenchに読み取られていない(たとえば、TopLink Workbench以外でファイルを変更した)場合、変更を書き込む前にファイルの読取りが求められます。

ejb-jar.xmlファイルからの読取り

ejb-jar.xmlの情報を読み取り、TopLink Workbenchプロジェクトを更新するには、次の手順を実行します。


ヒント:

すべてのエンティティに対してTopLink WorkbenchでEJBディスクリプタを自動作成するには、TopLink Workbenchにクラスを追加する前にejb-jar.xmlファイルを読み取ります。

  1. メニューから「選択」「プロジェクトのejb-jar.xmlからの更新」を選択します。

    ナビゲータ・ウィンドウでプロジェクトを右クリックし、そのコンテキスト・メニューから「プロジェクトのejb-jar.xmlからの更新」を選択することもできます。


注意:

ファイアウォールの背後でTopLink Workbenchを使用する場合、必要に応じて、ejb-jar.xmlファイルからの読取り前にプロキシを使用してTopLink Workbenchを構成します(「ヘルプ・プリファレンス」を参照)。接続タイムアウトのため、またはホストへのルートがないため、TopLink Workbenchがejb-jar.xmlファイルの読取りに失敗した場合は、プロキシ構成が必要になります。