使用可能な様々なプロジェクト・タイプの詳細は、「TopLinkプロジェクト・タイプ」を参照してください。
プロジェクトは、TopLink WorkbenchまたはJavaコードを使用して作成できます。
TopLink Workbenchを使用してプロジェクトを作成し、実行時に使用するプロジェクトのデプロイXMLまたはJavaソース・バージョンを生成することをお薦めします。詳細は、「TopLink Workbenchの使用」を参照してください。
また、プロジェクトはJavaコードでも作成できます。XML以外のレコード・タイプを使用するEISプロジェクトの場合は、Javaコードを使用する必要があります。詳細は、「Javaの使用」および『Oracle Application Server TopLink API Reference』を参照してください。
次のいずれかの条件に合致する場合、TopLinkを使用してプロジェクトを作成できます。
オブジェクト・モデルおよびデータ・モデルが両方ともある場合、「既存のオブジェクト・モデルおよびデータ・モデルに対するプロジェクトの作成」を参照してください。
オブジェクト・モデルはあるがデータ・モデルがない場合、「既存のオブジェクト・モデルからのプロジェクトの作成」を参照してください。
データ・モデルはあるがオブジェクト・モデルがない場合、「既存のデータ・モデルからのプロジェクトの作成」を参照してください。
XMLスキーマ(XSD)文書はあるがオブジェクト・モデルがない場合、「XMLスキーマからのXMLプロジェクトの作成」を参照してください。
XSDおよびオブジェクト・モデル・クラスが両方ともある場合、「TopLink Workbenchの使用」で説明している手順を使用して、XMLプロジェクトを作成できます。
非OC4J CMPプロジェクトがある場合は、OC4JおよびTopLink永続性にアプリケーションを移行することにより、プロジェクトを作成できます。「EARのOC4Jへの移行によるプロジェクトの作成」を参照してください。
EJB CMPアプリケーションをOC4Jにデプロイしている場合、デプロイ時に自動的にプロジェクトを作成できます(すべてのマッピングおよびデータ・モデルを含む)。「デプロイ時のOC4J EJB CMP EARからのプロジェクトの作成」を参照してください。
TopLink Workbenchを使用してプロジェクトを作成する場合は、すべてのプロジェクト情報は、プロジェクト・ファイル( .mwp
ファイル)に格納されます。このファイルは、Javaクラスがデータベース表またはXML要素にマップする方法についての情報を含む追加のXMLデータ・ファイルを参照します。
TopLink Workbenchを使用して、TopLinkランタイムによって読み取られるTopLinkプロジェクトXMLファイル(つまり、デプロイXMLファイル)としてこの情報をエクスポートできます。また、この情報をJavaクラスとしてエクスポートすることもできます。詳細は、「プロジェクト情報のエクスポート」を参照してください。
TopLink Workbenchは、プロジェクトおよびその内容をナビゲータ・ウィンドウに表示します。プロジェクトを選択すると、その属性がエディタ・ウィンドウに表示されます。詳細は、「ナビゲータの使用」を参照してください。TopLink Workbenchは次のプロジェクト・タイプをサポートします。
リレーショナル・プロジェクト
XMLプロジェクト
EISプロジェクト
この項では、新規TopLink Workbenchプロジェクトの作成について説明します。既存の永続アプリケーション(OC4Jなど)から新規プロジェクトを作成する場合は、第7章「TopLinkとアプリケーション・サーバーの統合」を参照してください。JAXBから新規プロジェクトを作成する場合は、「TopLinkによるJava Architecture for XML Binding(JAXB)のサポート」を参照してください。
新規TopLink Workbenchプロジェクトを作成するには、次の手順を実行します。
次の情報を参照し、このダイアログ・ボックスの各フィールドにデータを入力します。
フィールド | 説明 |
---|---|
名前 | TopLink Workbenchプロジェクトの名前を入力します。このプロジェクト名は.mwp ファイルの名前にもなります。 |
データ・ソース | この領域の各オプションを使用して、作成するプロジェクトのタイプおよびそのデータ・ソースを指定します。 |
データベース | 「データベース」を選択すると、リレーショナル・データベース用にリレーショナル・プロジェクトが作成されます。
「プラットフォーム」リストを使用して、特定のデータベース・プラットフォームを選択します。 詳細は、「リレーショナル・プロジェクト」を参照してください。 |
EIS | 「EIS」を選択すると、XMLレコードを使用して、非リレーショナル・データ・ソース用にEISプロジェクトが作成されます。
「プラットフォーム」リストを使用して、使用するJ2Cアダプタを指定します。 詳細は、「EISプロジェクト」を参照してください。 |
XML | 「XML」を選択すると、XMLスキーマ用に、非トランザクション型で非永続的なXMLプロジェクトが作成されます。
あるいは、XMLプロジェクトのみでなくオブジェクト・モデル・クラスも一緒に生成することもできます(「XMLスキーマからのXMLプロジェクトの作成」を参照)。 詳細は、「XMLプロジェクト」を参照してください。 |
プロジェクトについては、続いて次の操作があります。
プロジェクトを構成します(第19章「プロジェクトの構成」を参照)。
マッピングおよびディスクリプタを追加します(第23章「ディスクリプタの概要」および第30章「マッピングの概要」を参照)。
TopLinkランタイムで使用するためにプロジェクトをエクスポートします(「プロジェクト情報のエクスポート」を参照)。
Javaコードを使用してプロジェクトを作成するには、次の手順を実行します。
oracle.toplink.sessions.Project
クラスを拡張するプロジェクト・クラスを実装します(例18-1を参照)。
プロジェクト・クラスをコンパイルします。
例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の使用」を参照)。
プロジェクト・クラスパスを構成します(「プロジェクト・クラスパスの構成」を参照)。
クラスをインポートします(「クラスのインポートおよび更新」を参照)。
データベース表をインポートします(「データベースからの表のインポート」を参照)。
プロジェクト・オプションを構成します(第19章「プロジェクトの構成」を参照)。
既存のオブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)はあるが、対応するデータ・モデルがない場合は、次の手順を使用してTopLinkプロジェクトを作成し、対応するデータ・モデルを自動生成します。
この手順は、リレーショナル・プロジェクトに適用されます。
プロジェクトを作成します(「TopLink Workbenchの使用」を参照)。
プロジェクト・クラスパスを構成します(「プロジェクト・クラスパスの構成」を参照)。
クラスをインポートします(「クラスのインポートおよび更新」を参照)。
データベース表を生成します。詳細は、次を参照してください。
プロジェクト・オプションを構成します(第19章「プロジェクトの構成」を参照)。
既存のデータ・モデル(データベース・スキーマなど)はあるが、対応するオブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)がない場合は、次の手順を使用してTopLinkプロジェクトを作成し、対応するオブジェクト・モデルを自動生成します。
この手順は、リレーショナル・プロジェクトに適用されます。
プロジェクトを作成します(「TopLink Workbenchの使用」を参照)。
データベース表をインポートします(「データベースからの表のインポート」を参照)。
クラスを生成します。詳細は、次のいずれかを参照してください。
プロジェクト・オプションを構成します(第19章「プロジェクトの構成」を参照)。
既存のデータ・モデル(XMLスキーマ文書)はあるが、対応するオブジェクト・モデル(ドメイン・オブジェクトに対するJavaクラス)がない場合は、次の手順を使用してTopLinkプロジェクトを作成し、対応するオブジェクト・モデルを自動生成します。
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章「統合開発環境の使用」を参照してください。 |
詳細は、次を参照してください。
JAXBを使用してXMLスキーマから新規のマップされたTopLink Workbenchを作成するには、次の手順を実行します。
TopLink Workbenchから、「ファイル」→「新規」→「プロジェクト」→「XMLスキーマ(JAXB)から」の順に選択します。
図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
ディレクトリ内にある)を次のように使用します。
テキスト・エディタを使用して、tljaxb.cmd
またはtljaxb.sh
ファイルを編集し、プロキシ設定を行います(必要な場合)。
URLによって別のスキーマをインポートするスキーマを使用し、プロキシの背後で操作している場合、例18-2または例18-3に示されているラインを編集してコメントを外し、プロキシ・ホスト(名前またはIPアドレス)およびポートを設定します。
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バインド・コンパイラの引数
引数 | 説明 | オプションか |
---|---|---|
|
使用方法(この情報)を出力します。 |
○ |
|
TopLink JAXBコンパイラのリリースのバージョンを出力します。 |
○ |
|
生成されたインタフェース、実装クラスおよびデプロイ・ファイルが書き込まれるディレクトリのパス。 デフォルト: 指定された出力ディレクトリの下位に生成される |
○ |
|
TopLink Workbenchプロジェクトと必要なプロジェクト・ファイルを生成します。省略すると、ランタイム情報のみ生成されます。 |
○ |
|
TopLink Workbenchプロジェクト・ファイルが書き込まれるディレクトリのパス。この引数には デフォルト: 指定された出力ディレクトリの下位に生成される |
○ |
|
XSDファイルの完全修飾パス。 |
× |
|
生成されたインタフェースおよびクラスの両方が属するパッケージの名前。これによりコンテキスト・パスが定義されます。実装クラスに別のパッケージを指定するには、 デフォルト: |
○ |
|
生成された実装クラスが属するパッケージの名前。このオプションが設定される場合、インタフェースは |
○ |
|
インタフェースのみを生成します。この引数はオプションです。 デフォルト: インタフェースおよび実装クラスを両方とも生成します。 |
○ |
|
生成されたインタフェースおよびクラスの名前を出力します。この引数はオプションです。 デフォルト: 生成されたインタフェースおよびクラスの名前を出力しません。 |
○ |
|
JAXBコンパイラのデフォルト動作をオーバーライドするために使用できる標準JAXBカスタマイズ・ファイルの完全修飾パスおよびファイル名。 |
○ |
オプションの操作には、生成されたTopLink WorkbenchプロジェクトをTopLink Workbenchで開くこと(「TopLink Workbenchプロジェクト」を参照)、生成されたマッピングおよびディスクリプタのカスタマイズ、TopLinkプロジェクトXMLの再エクスポートがあります。
注意: 生成されたクラスをコンパイルする前に、IDEクラスパスに< ORACLE_HOME >\lib\xml.jar を含むよう構成してください。たとえば、第6章「統合開発環境の使用」を参照してください。 |
アプリケーション・サーバーのデフォルトの永続マネージャとなるようにTopLinkを構成している場合、TopLinkにより、既存のJ2EE CMPアプリケーション・サーバー固有のejb-jar.xml
ファイルを必要なtoplink-ejb-jar.xml
ファイルに自動的に移行するサポートが提供されます。また、必要となるTopLink Workbenchプロジェクトも提供されます。
この手順は、CMPリレーショナル・プロジェクトにのみ適用されます。
詳細は、「永続性マネージャの移行」を参照してください。
永続マネージャとしてTopLinkを使用するように構成された、OC4JにデプロイされているCMPアプリケーションの場合、TopLinkのデフォルトのマッピング機能を使用して、すべての永続オブジェクトのディスクリプタおよびマッピングを含むTopLinkプロジェクトを、デプロイ時に自動生成できます。
この手順は、デフォルトの永続マネージャとしてTopLinkを使用するように構成された、OC4JにデプロイされているCMPリレーショナル・プロジェクトにのみ適用されます。
詳細は、「実行時にOC4Jを使用するCMPプロジェクトでのデフォルト・マッピング」を参照してください。
TopLink Workbenchを使用して、次のプロジェクト機能を実行できます。
TopLink Workbenchプロジェクトの使用方法の詳細は、第19章「プロジェクトの構成」を参照してください。
ツールバーで「プロジェクトを開く」をクリックします。「ファイルの選択」ダイアログ・ボックスが表示されます。また、メニューから「ファイル」→「開く」の順に選択して、プロジェクトを開くこともできます。
注意: 「ファイル」メニュー・オプションには、最近開いたプロジェクトのリストが含まれます。これらのプロジェクトの1つを選択して開くことができます。このリストのカスタマイズ方法の詳細は、「一般プリファレンス」を参照してください。 |
開こうとしているTopLink Workbenchプロジェクト・ファイル(.mwp
)を選択し、「開く」をクリックします。TopLink Workbenchにより、プロジェクトの情報が表示されます。
EJB情報を含むTopLink Workbenchバージョン3.nプロジェクトを開く場合、「潜在的なEJBディスクリプタ」ダイアログ・ボックスが表示されます。
EJBディスクリプタとしてインポートする必要があるディスクリプタ、および「プロジェクトの永続性タイプ」を選択し、「OK」をクリックします。
EJB仕様に準拠するメソッドおよび属性が現在のクラス・ディスクリプタ内にない場合は、これらをTopLink Workbenchで生成するかどうかを指定することもできます。
TopLink Workbenchバージョン9.0.3以上のプロジェクトを開く場合、「前のバージョンから新規TopLInk Workbenchプロジェクトを作成」ダイアログ・ボックスが表示されます。
図18-4 「前のバージョンから新規TopLink Workbenchプロジェクトを作成」ダイアログ・ボックス
古いプロジェクトを現行の形式に変換し、プロジェクトをただちに表示するには、「後で保存」をクリックします。
古いプロジェクトを現行の形式に変換し、それを新しい場所に保存してからそのプロジェクトを表示するには、「すぐに保存」をクリックします。
TopLink Workbenchはプロジェクトを自動的に保存しません。データが失われることがないように、プロジェクトを頻繁に保存してください。
プロジェクトを保存するには、次の手順を実行します。
「保存」または「すべて保存」をクリックして、プロジェクトを保存します。
メニューから「ファイル」→「保存」または「ファイル」→「すべて保存」の順に選択して、プロジェクトを保存することもできます。
保存されていない変更がある場合にTopLink Workbenchを閉じると、「プロジェクトの保存」ダイアログ・ボックスが表示されます。
保存するプロジェクトを選択して、「OK」をクリックします。
「すべて選択」をクリックして、使用可能なプロジェクトをすべて選択します。
異なる名前または場所を使用してプロジェクトを保存するには、次の手順を実行します。
「ファイル」→「別名保存」の順に選択します。「別名保存」ダイアログ・ボックスが表示されます。
名前と場所を選択してから、「保存」をクリックします。
プロジェクト・ステータス・レポートを使用すると、TopLink Workbenchプロジェクトのすべての警告およびエラーのリストが表示されます。このレポートは、問題ウィンドウ(「TopLink Workbenchでの作業」を参照)に似ているものの、エラーをドキュメントまたはメッセージに簡単にコピー、貼付けできる点が異なります。プロジェクト・ステータス・レポートを生成するには、次の手順を実行します。
問題ウィンドウの上にある「問題」ラベルを右クリックして、「問題の報告」を選択します。「プロジェクト・ステータス・レポート」ダイアログ・ボックスが表示され、各TopLink Workbenchプロジェクトのステータスが表示されます。
メニューから「ツール」→「問題の報告」の順に選択して、プロジェクト・ステータス・レポートを生成することもできます。
レポートされた各エラーの情報は、第14章「TopLink Workbenchエラー参照」を参照してください。
レポートを別のアプリケーションにコピーするには、「コピー」をクリックします。
実行時にプロジェクトをTopLink Foundation Libraryとともに使用するには、デプロイXMLを生成するか、またはプロジェクトをJavaソース・コードにエクスポートする必要があります。
すべてのプロジェクト・タイプにおいて、TopLink Workbenchにより、次のようなプロジェクト情報の生成およびエクスポートを行えます。
デプロイXML情報のエクスポート(project.xml
ファイル)
注意: JavaソースおよびデプロイXMLをエクスポートする際、TopLink Workbenchは、Java Cryptography Extension(JCE)の暗号化機能を使用して(JDK 1.4を使用する場合)、データベース・パスワードを書き込みます(該当する場合)。パスワード暗号化オプションの指定方法の詳細は、「パスワード暗号化の構成」を参照してください。JDK 1.3以下でのパスワード暗号化使用の詳細は、『Oracle TopLinkスタート・ガイド』を参照してください。 |
リレーショナル・プロジェクトの場合にかぎり、TopLink Workbenchで、次のようなプロジェクト情報の生成およびエクスポートを行えます。
デプロイXMLファイル(project.xml
)をエクスポートするには、次の手順を実行します(詳細は、第8章「デプロイ用TopLinkファイルの作成」を参照)。
プロジェクトを選択し、「デプロイXMLのエクスポート」をクリックします。
ナビゲータでプロジェクトを右クリックしてコンテキスト・メニューから「エクスポート」→「プロジェクト配布XML」を選択するか、またはメニューから「選択」→「エクスポート」→「プロジェクト配布XML」を選択することもできます。
デプロイおよびソース・コード生成のデフォルト(第19章「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりファイル名およびディレクトリの入力が求められます。
注意: プロジェクトにエラーが含まれる場合は、project.xml は無効なものになります。レポートされた各エラーの情報は、第14章「TopLink Workbenchエラー参照」を参照してください。 |
10gリリース3(10.1.3.1.0)より前のプロジェクトと互換性のあるデプロイXMLファイルを生成するには、「推奨されないダイレクト・マッピングの構成」を参照してください。
プロジェクト・モデルのJavaソース・コードを生成するには、次の手順を実行します。
ナビゲータでプロジェクト、パッケージまたは特定のディスクリプタを右クリックし、そのコンテキスト・メニューから「エクスポート」→「モデルJavaソースのエクスポート」の順に選択します。TopLink Workbenchは、選択したディスクリプタごとに.java
ファイルを作成します。
あるいは、メニューから「Workbench」→「エクスポート」→「モデルJavaソースのエクスポート」または「選択」→「エクスポート」→「モデルJavaソース」を選択するか、または「クラス」タブで「ソース・コードの生成」をクリックします。詳細は、「クラス情報の構成」を参照してください。
デプロイおよびソース・コード生成のデフォルト(「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりルート・ディレクトリの入力が求められます。
注意: TopLink WorkbenchプロジェクトでUTF-8キャラクタ・セットを使用する場合は、エクスポートされたJavaソースをコンパイルする際に、互換性のあるJDKを使用する必要があります。 |
リレーショナル・プロジェクトの場合にかぎり、プロジェクトをJavaソース・コードに変換できます。通常、生成されたJavaコードは、XMLファイルより高速に実行、および簡単にデプロイできます。プロジェクトの特定のディスクリプタに対するモデル・ソースをエクスポートするには、「ディスクリプタに関するJavaコードの生成」を参照してください。リレーショナル・プロジェクトをJavaソースに変換するには、次の手順を実行します。
ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「エクスポート」→「プロジェクトJavaソース」を選択します。
また、メニューから「Workbench」→「エクスポート」→「Javaソースのエクスポート」または「選択」→「エクスポート」→「プロジェクトJavaソース」と選択することもできます。
デプロイおよびソース・コード生成のデフォルト(「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりプロジェクト・クラス名およびディレクトリの入力が求められます。
注意: TopLink WorkbenchプロジェクトでUTF-8キャラクタ・セットを使用する場合は、エクスポートされたJavaソースをコンパイルする際に、互換性のあるJDKを使用する必要があります。プロジェクトにエラーが含まれる場合は、 |
10gリリース3(10.1.3.1.0)より前のプロジェクトと互換性のあるJavaソースを生成するには、「推奨されないダイレクト・マッピングの構成」を参照してください。
リレーショナル・プロジェクトの場合にかぎり、この手順を使用して、プロジェクトで定義されたデータベース表を生成するJavaソース・コードを作成できます。
ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「エクスポート」→「表作成Javaソース」を選択します。
また、メニューから「Workbench」→「エクスポート」→「表作成Javaソース」または「選択」→「エクスポート」→「表作成Javaソース」と選択することもできます。
デプロイおよびソース・コード生成のデフォルト(第19章「プロジェクトの構成」を参照)が未定義の場合は、TopLink Workbenchによりクラス名およびルート・ディレクトリの入力が求められます。
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 |
---|---|
データベース表の主キーにマップされるBean属性(「主キーの構成」を参照)。 |
|
|
「EJB情報」タブ上のEJBディスクリプタ情報(「EJB情報によるディスクリプタの構成」を参照)。 |
|
「ディスクリプタ・エイリアス」フィールド(「ディスクリプタ・エイリアスの構成」を参照)。 |
|
「ディスクリプタ情報」タブ上の直接(非リレーションシップ)属性(「共通ディスクリプタ・オプションの構成」を参照)。 |
|
「一般」タブ上の「永続性タイプ」フィールド(「永続性タイプの構成」を参照)。 |
|
「問合せ」タブにリストされる問合せ(「ディスクリプタ・レベルでの名前付き問合せの構成」を参照)。 注意: |
1対1、1対多、多対多マッピング(第X部「リレーショナル・マッピング」を参照)。 |
現在のTopLink Workbench情報に基づいてejb-jar.xml
ファイルを更新するには、次の手順を実行します。
注意: EJBプリファレンスを使用して、プロジェクトを保存する際にTopLink Workbenchで自動的にejb-jar.xml ファイルを更新するかどうかを指定します。 |
注意: .jar ファイルに情報を書き込むこともできます。TopLink Workbenchは、自動的にejb-jar.xml ファイルを適切な場所に配置します(META-INF/ejb-jar.xml )。 |
メニューから「選択」→「プロジェクトのejb-jar.xmlへの書込み」の順に選択します。
ナビゲータでプロジェクトを右クリックし、そのコンテキスト・メニューから「プロジェクトのejb-jar.xmlへの書込み」を選択することもできます。
現在、プロジェクトにejb-jar.xml
ファイルが含まれていない場合、システムにより新規ファイルの作成が求められます。
ejb-jar.xml
ファイルを変更したことがシステムにより検出されたが、まだTopLink Workbenchに読み取られていない(たとえば、TopLink Workbench以外でファイルを変更した)場合、変更を書き込む前にファイルの読取りが求められます。
ejb-jar.xml
の情報を読み取り、TopLink Workbenchプロジェクトを更新するには、次の手順を実行します。
ヒント: すべてのエンティティに対してTopLink WorkbenchでEJBディスクリプタを自動作成するには、TopLink Workbenchにクラスを追加する前にejb-jar.xml ファイルを読み取ります。 |
メニューから「選択」→「プロジェクトのejb-jar.xmlからの更新」を選択します。
ナビゲータ・ウィンドウでプロジェクトを右クリックし、そのコンテキスト・メニューから「プロジェクトのejb-jar.xmlからの更新」を選択することもできます。
注意: ファイアウォールの背後でTopLink Workbenchを使用する場合、必要に応じて、ejb-jar.xml ファイルからの読取り前にプロキシを使用してTopLink Workbenchを構成します(「ヘルプ・プリファレンス」を参照)。接続タイムアウトのため、またはホストへのルートがないため、TopLink Workbenchがejb-jar.xml ファイルの読取りに失敗した場合は、プロキシ構成が必要になります。 |