Oracle® Fusion Middleware Oracle WebLogic Server エンタープライズ JavaBeans (EJB) プログラマーズ ガイド 11g リリース 1 (10.3.1) B55528-01 |
|
![]() 戻る |
![]() 次へ |
ここでは、EJB コードのコンパイル、検証、生成に使用する WebLogic Server appc
ツールの詳細なリファレンスを提供します。
appc
コンパイラは、EJB および JSP を WebLogic Server にデプロイするのに必要なクラスを生成し、コンパイルします。また、個別のモジュール レベルとアプリケーション レベルの両方で、現在の仕様に準拠しているかどうかデプロイメント記述子を検証します。アプリケーション レベルのチェックでは、個別のモジュールに対するアプリケーション レベルのデプロイメント記述子のチェックと、モジュール全体の検証チェックが行われます。
Kodo 永続性ユニットを含むアプリケーションをコンパイルしている場合、appc
コンパイラは Kodo エンハンサも実行します。Kodo エンハンサは、Java コンパイラが生成したバイトコードを後処理して、必要な永続機能の実装に必要なフィールドとメソッドを追加します。このバイトコードの変更では、スタック トレースの行番号は完全に維持され、Java デバッガとの互換性を維持します。Kodo の使い方については、『Oracle Fusion Middleware Oracle WebLogic Server エンタープライズ JavaBeans バージョン 3.0 プログラマーズ ガイド』の「WebLogic Server での Oracle Kodo の使い方」を参照してください。
注意 : Kodo の管理による永続性ユニットと Kodo 以外の管理による永続性ユニットの両方を含むアプリケーションに対してappc を実行する場合、kodc は Kodo の管理による永続性ユニットだけを実行します。 |
appc
ツールの利点は以下のとおりです。
個々のモジュールを別々にコンパイルして、事後に EAR として結合するのではなく、アプリケーション全体をコンパイルできる柔軟性。
EAR コンパイル中に WebLogic Server がすべてのモジュールにアクセスできることによる、すべてのモジュールにわたる検証チェック、およびさまざまなモジュールに対するアプリケーションレベルのデプロイメント記述子検証。
appc がなかったときは、EAR ファイル内のすべてのモジュールをコンパイルする場合、ユーザは EAR の個々のコンポーネントを抽出し、適切なコンパイラ (jspc
または ejbc
) を手動で実行して、デプロイメント用モジュールを準備しなければなりませんでした。appc
はこのプロセスを自動化し、従来はできなかった追加の検証チェックをデプロイメント前に実行します。
appc
のエラーを簡単に特定して修正できる。
コマンドラインで appc
を実行中にエラーが発生すると、エラー メッセージが表示され、appc
が終了します。
それに対して、コンパイルをデプロイメント時に行うことにした場合、コンパイル エラーが発生すると、サーバはデプロイメントが失敗しても作業を続けます。デプロイメントの失敗の原因を特定するには、サーバ出力を調べ、問題を修正し、再デプロイする必要があります。
デプロイメントの前に appc
を実行すると、Bean のコンパイル時間を短縮できる。
たとえば、JAR ファイルを 3 つのサーバのクラスタにデプロイする場合、JAR ファイルが各サーバにコピーされてデプロイされます。JAR ファイルがコンパイルされていない場合、各サーバは、デプロイメント時にファイルをコンパイルする必要があります。
appc
の実行には、次の構文を使用します。
prompt>java weblogic.appc [options] <ear, jar, or war file or directory>
J2EE では、application.xml
の <module>
要素の <alt-dd>
要素を使用して、EJB または Web アプリケーション モジュールの代替 J2EE デプロイメント記述子を指定できます。
<alt-dd>
を使用することで、J2EE デプロイメント記述子 web.xml
および ejb-jar.xml
についてのみ代替デプロイメント記述子を指定できます。WebLogic Server 8.1 SP01 からは、alt-dd
でモジュールの代替デプロイメント記述子を指定すると、appc
はその代替記述子ファイルを使用して EJB をコンパイルします。
<alt-dd>
要素の詳細については、『Oracle Fusion Middleware Oracle WebLogic Server アプリケーションのデプロイメント』の「エンタープライズ アプリケーションのデプロイメント記述子の要素」の「module」を参照してください。
WebLogic Server 8.1 SP01 以降では、以下のように appc
のコマンドライン オプションを使用して、アプリケーションの代替 J2EE および WebLogic Server デプロイメント記述子を指定できます。
-altappdd <
file
>
- このオプションを使用すると、代替 J2EE デプロイメント記述子ファイル (application.xml
) の絶対パスとファイル名を指定できます。
-altwlsappdd <
file
>
- このオプションを使用すると、代替 WebLogic アプリケーション デプロイメント記述子ファイル (weblogic-application.xml
) の絶対パスとファイル名を指定できます。
表 D-1 は、appc
のコマンドライン オプションのリストです。
表 D-1 appc のコマンドライン オプション
オプション | 説明 |
---|---|
|
高度な使用オプションを出力する。 |
|
代替 J2EE アプリケーション デプロイメント記述子を指定する。 |
|
代替 WebLogic Server アプリケーション デプロイメント記述子を指定する。 |
|
EJB 用に生成されたクライアント JAR のデプロイメント記述子を含まない。 |
|
コンパイル中に使用するクラスパスを選択する。 |
|
生成されたクライアント jar ファイルを配置するディレクトリを指定する。これが設定されていないと、生成された jar ファイルは JVM が実行しているディレクトリと同じ場所に配置される。 |
|
使用する Java コンパイラを選択する。 |
|
非推奨となった呼び出しについて警告する。 |
|
EJB および JSP クラスを強制的に生成する。このフラグがないと、チェックサムでその必要性が示されない限りクラスは再生成されない。 |
|
デバッグ情報をクラス ファイルにコンパイルする。 |
|
標準の使い方メッセージを出力する。 |
|
EJB リモート インタフェース用の IDL を生成する。 |
|
IDL ファイルを作成するディレクトリを指定する (デフォルトでは、対象ディレクトリまたは JAR)。 |
|
値タイプ用にファクトリ メソッドを生成する。 |
|
IDL コードを生成するトリガとして使用されるメソッド シグネチャを指定する。 |
|
抽象インタフェース、およびそれを含むメソッドと属性を生成しない。 |
|
値タイプ、およびそれを含むメソッドと属性を生成しない。 |
|
Orbix 2000 2.0 C++ と多少の互換性を持つ IDL を生成する。 |
|
常に既存の IDL ファイルを上書きする。 |
|
IDL 生成についての詳細な情報を表示する。 |
|
Visibroker 4.5 C++ と多少の互換性を持つ IDL を生成する。 |
|
EJB 用に CORBA のスタブを生成する。 |
|
IIOP のスタブ ファイルを記述するディレクトリを指定する (デフォルトでは、対象ディレクトリまたは JAR)。 |
|
Java 実行時にフラグを渡す。 |
|
生成された |
|
ライブラリのカンマ区切りのリスト。各ライブラリは、マニフェストで設定されていない場合、その名前とバージョンを次の構文で設定できる。
|
|
指定したディレクトリ内のすべてのファイルをライブラリとして登録する。 |
|
生成されたクラス ファイルに行番号を追加し、デバッグを支援する。 |
|
Symantec の sj にフラグを渡す。 |
|
警告なしでコンパイルする。 |
|
最適化を有効にしてコンパイルする。 |
|
代替的な出力アーカイブまたはディレクトリを指定する。これが設定されていないと、出力はソース アーカイブまたはディレクトリに置かれる。 |
|
デプロイメント プラン (省略可能) を指定する。 |
|
冗長情報を出力してコンパイルする。 |
|
|
weblogic.appc
は、以下の EJB 関連機能を実行します。
EJB 用の WebLogic Server コンテナ クラスの生成。
すべての EJB クラスおよびインタフェースが EJB 仕様に準拠しているかどうかのチェック。
潜在的なコンフィグレーション上の問題がないかのデプロイメント記述子のチェック。たとえば、ejb-jar.xml
で cmp フィールドが宣言されていれば、appc
は、カラムが weblogic-cmp-jar.xml
デプロイメント記述子にマップされているかどうかを検証します。
RMI コンパイラを使用して各 EJB コンテナ クラスを実行することによる、スタブとスケルトンを動的に生成するのに必要な RMI 記述子の作成。
appc
は、デフォルトで javac
をコンパイラとして使用します。パフォーマンスを向上させるには、コマンドライン -compiler
フラグまたは Administration Console を使用して別のコンパイラ (Symantec の sj
など) を指定します。Oracle Fusion Middleware Oracle WebLogic Server の Administration Console オンライン ヘルプの「コンパイラ オプションのコンフィグレーション」を参照してください。
weblogic-ejb-jar.xml
のパブリック バージョンの場所については、「weblogic-ejb-jar.xml デプロイメント記述子のリファレンス」を参照してください。weblogic-cmp-jar.xml
のパブリック バージョンの場所については、「weblogic-cmp-jar.xml デプロイメント記述子のリファレンス」を参照してください。