OC4Jにはadmin_client.jar
というコマンドライン・ユーティリティが用意されています。このユーティリティを使用すると、Oracle Application Serverのクラスタ化された環境およびスタンドアロンOC4JサーバーのアクティブなOC4Jインスタンスで構成、管理およびデプロイ・タスクを実行できます。また、admin_client.jar
を使用して、OC4Jインスタンスやインスタンスのグループを再起動または停止することも可能です。
またadmin_client.jar
ユーティリティは操作をリモートで実行するための管理クライアント・ユーティリティの一部でもあり、Companion CDから、またはOracle Technology Networkからダウンロードして入手できます。
特定のOC4Jインスタンスで操作を実行することも、グループ内のすべてのOC4Jインスタンスで同時に操作を実行することも可能です。グループは、同じクラスタ・トポロジ(2つ以上の緩やかに接続されたOracle Application Serverノード)に属するOC4Jインスタンスの同期セットです。admin_client.jar
コマンドライン・ユーティリティを使用すると、OC4JインスタンスまたはOC4Jインスタンスのグループで次の操作を実行できます。
Webサイトの追加
エンタープライズ・アプリケーション・アーカイブ(EAR)、スタンドアロンWebモジュール(WAR)、Enterprise JavaBeans(EJB)モジュール(EJB JAR)、またはスタンドアロン・リソース・アダプタ(RAR)のデプロイ
アプリケーション、Webモジュール、EJBモジュールまたはリソース・アダプタのアンデプロイ
変更されたクラスを保持するデプロイ済EJBモジュールの増分的な更新
WebサイトへのWebモジュールのバインド、WebサイトからのWebモジュールのアンバインド、およびWebバインディングの詳細の一覧表示
アプリケーションの共有ライブラリの作成、変更または削除
アプリケーションの起動、再起動または停止、およびアプリケーションのステータスと詳細の一覧表示
OC4Jインスタンスやインスタンスのグループの再起動または停止
データソースとデータソース接続プールの追加、テスト、一覧表示および削除
JMS接続プールや接続先の追加および削除
Application Server ControlまたはOC4J Antタスクを使用して類似の操作を実行できます。詳細は、『Oracle Containers for J2EEデプロイメント・ガイド』のApplication Server Controlを使用したデプロイに関する項またはOC4J Antタスクを使用したデプロイに関する項を参照してください。
この章の内容は次のとおりです。
admin_client.jar
ユーティリティは、各OC4JインスタンスのORACLE_HOME
/j2ee/
instance
ディレクトリにデフォルトでインストールされます。これは、OC4Jで操作を実行する際に推奨されるコマンドライン・ツールです。このユーティリティはリモートで操作を実行する管理クライアント・ユーティリティの一部でもあり、Oracle Application Server 10gリリース3(10.1.3.5.0)のCompanion CDから、またはOracle Technology Networkからダウンロードして入手できます。
OC4Jインスタンスでこのユーティリティを使用して操作を実行するには、インスタンスを起動する必要があります。
この項の内容は次のとおりです。
admin_client.jar
ユーティリティは、次の構文を使用します。
java -jar admin_client.jar uri adminId adminPassword command
コマンドラインで渡される主要なパラメータは、uri
です。これは、指定された1つ以上のコマンドのターゲットを指定します。URIの構文は、ターゲットとなるインスタンスによって異なります。このURIの書式は、次の項を参照してください。
OC4J管理ユーザー名およびパスワードもadmin_client.jar
ユーティリティに渡されます。デフォルトの管理者アカウントのユーザー名はoc4jadmin
です。
たとえば、次のコマンドは、petstore
アプリケーションを起動します。このアプリケーションは、クラスタのメンバーであるnode1
上のoc4j_2
という名前のOC4Jインスタンスにインストールされています。
java -jar admin_client.jar deployer:oc4j:opmn://node1.company.com/oc4j_2 oc4jadmin password -application petstore -start
図6-1に、クラスタ内のOracle Application Serverインスタンスの1つであるOC4J_home
という名前のOC4Jインスタンスから実行するよう構成されている4つのプロセスを示します。
図6-1 クラスタ内のOracle Application Serverインスタンスにおいて複数のJVMで実行されるOC4Jインスタンス
注意: 通常、home という名前のOC4Jインスタンスは、複数プロセス・モデルでの実行には適さないApplication Server Controlアプリケーションのホストであるため、複数のプロセスで実行するように構成することはできません。 |
次のURIを使用して、グループ内のすべてのOC4Jインスタンスをターゲットとして指定します。グループは、同じクラスタ・トポロジに属するOC4Jインスタンスの同期セットです。グループのすべてのOC4Jインスタンスで、構成、管理およびデプロイ操作を同時に実行できます。たとえば、Oracle Application Serverクラスタ内のoc4j_soa
という名前のグループに属するすべてのOC4Jインスタンスを同時に停止できます。
URIはOPMNベースのクラスタリング・フレームワークを使用します。このフレームワークでは、クラスタ・ノード同士が相互に認識しています。指定する必要があるのはホスト名と、オプションで、クラスタ内の任意のOracle Application ServerノードのOPMNリクエスト・ポートのみです。これにより、アプリケーションが、ホスト名とクラスタ内のその他すべてのノードのOPMNポートを取得できるようになります。
URIの構文は次のとおりです。
deployer:cluster:[rmis]:opmn://opmnHost[:opmnPort]/groupName
次に例を示します。
deployer:cluster:opmn://node1.company.com/oc4j_soa
表6-1 グループをターゲットとするためのURIパラメータ
パラメータ | 説明 |
---|---|
|
任意。ターゲットがORMI over SSL(ORMIS)を使用する場合に指定します。 |
|
必須。クラスタ内のOracle Application Serverノードのホスト名。どのノードでも指定できます。クラスタ内の他のノードのリストはこのノードから取得されます。 |
|
任意。 |
|
必須。クラスタ内で、OC4Jインスタンスが属するグループの名前。 |
次のURI構文を使用して、特定のOPMN管理のOC4Jインスタンス(クラスタ内のインスタンスなど)をターゲットとします。接頭辞では、cluster
がoc4j
に置き換えられます。
インスタンスのホストとなるOracle Application Serverノードのホスト名を指定します。ノードのホスト名またはポートが不明な場合は、クラスタ内の別のノードのホスト名とOracle Application Serverインスタンスの名前を指定できます。アプリケーションは、OPMNクラスタリング・フレームワークを使用してOracle Application Serverインスタンスのホストとなるノードを探し出します。
URIの構文は次のとおりです。
deployer:oc4j:[rmis]:opmn://host[:opmnPort]/[iASInstanceName]/oc4jInstanceName
次に例を示します。
deployer:oc4j:opmn://server.company.com:6004/instance2/home
表6-2 特定のインスタンスをターゲットとするためのURIパラメータ
パラメータ | 説明 |
---|---|
|
任意。ターゲットがORMI over SSL(ORMIS)を使用する場合に指定します。 |
|
必須。OPMNサーバーとして使用するための、クラスタ内でターゲットとなるOracle Application Serverノードのホスト名。 |
|
任意。 |
|
任意。 |
|
必須。ターゲットOC4Jインスタンスの名前。 |
次のURIのいずれかを使用して、スタンドアロンOC4Jサーバー・インスタンスをターゲットとします。
RMIを使用する場合は、次のようにしてURIを指定します。
deployer:oc4j:host:rmiPort
次に例を示します。
deployer:oc4j:myserver:23791
ORMI over SSL(ORMIS)を使用する場合は、次のようにしてURIを指定します。
deployer:oc4j:rmis:host:ormisPort
次に例を示します。
deployer:oc4j:rmis:myserver:23943
表6-3 スタンドアロンOC4JをターゲットとするためのURIパラメータ
パラメータ | 説明 |
---|---|
|
ターゲットがORMI over SSL(ORMIS)を使用する場合は必須です。 |
|
必須。クラスタ内のOracle Application Serverノードのホスト名。どのノードでも指定できます。クラスタ内の他のノードのリストはこのノードから取得されます。 |
|
RMIが使用される場合は必須です。インスタンス固有の |
|
ORMISが使用される場合は必須です。インスタンス固有の |
管理クライアント・ユーティリティのディストリビューションには、admin_client.jar
コマンドライン・ユーティリティが含まれています。このユーティリティはOC4JまたはOracle Application Serverターゲットに接続し、一連のライフサイクル、デプロイおよびリソース構成の操作を実行できます。
リモート・システムでOracle Application Serverインスタンスに対して通常の操作を実行する必要があるとします。たとえばリモート・システムに、デプロイ操作、またはアプリケーション固有またはサーバーのJMX MBeansの管理目的での問合せや操作など、自動化された作成またはテスト・プロセスが複数あるとします。または、リモート・システムで、構成およびデプロイ操作の本番セットに対して定期的にスケジュールされたテストを実行するとします。管理クライアント・ユーティリティを使用してこれを実行すれば、リモート・システムに完全なOC4JまたはOracle Application Serverインストールを用意する必要がなくなります。
Oracle Application Server 10gリリース3(10.1.3.5.0)の別のディストリビューションである管理クライアント・ユーティリティは、Oracle Technology Networkからダウンロードできます。また、Oracle Application ServerのCompanion CDにも含まれています。ディストリビューション・ファイルoc4j_admin_client_101350.zip
には、OC4Jインスタンスのリモート管理に必要なものがすべて含まれています。
OC4JまたはOracle Application ServerターゲットへのORMIプロトコルを使用したリモートJMX接続の確立に必要なJavaライブラリ
機能するために必要なライブラリ付きの実行可能なadmin_client.jar
ユーティリティ
リモート・クライアント・ロールに関連する標準のJ2EEライブラリ
管理クライアント・ユーティリティをダウンロードおよび抽出する手順:
Oracle Technology Networkからoc4j_admin_client_101350.zip
をダウンロードします。
http://download.oracle.com/otn/java/oc4j/10131/oc4j_admin_client_101350.zip
oc4j_admin_client_101350.zip
のコンテンツをローカル・ディレクトリに解凍します。次に例を示します。
>mkdir oc4j_admin_client >cd oc4j_admin_client >jar xvf d:\software\oc4j_admin_client_101350.zip
その結果、ディレクトリ構造は次のようになります。
\j2ee \home oc4jclient.jar admin_client.jar \lib ejb.jar mail.jar adminclient.jar javax88.jar javax77.jar jmx_remote_api.jar jmxri.jar \lib xmlparserv2.jar dms.jar \opmn \lib optic.jar \jlib oraclepki.jar ojpse.jar
次のURIでは、個々のOC4Jターゲットに異なるパターンが使用されます。
スタンドアロンOC4Jサーバー:
deployer:oc4j:test-cycle.oracle.com:23791
Oracle Application Serverの特定のOC4Jインスタンス:
deployer:oc4j:opmn://test-cycle.oracle.com/testunit
クラスタ内のOC4Jインスタンスのグループ:
deployer:cluster:opmn://test-cycle.oracle.com/[groupName]
admin_client.jar
を1つ以上のターゲットOC4Jインスタンスに接続し、接続をテストします。次に例を示します。
>cd j2ee\home >java -jar admin_client.jar deployer:oc4j:opmn://test-cycle.oracle.com/testunit oc4jadmin welcome1 –validateURI URI deployer:oc4j:opmn://test-cycle.oracle.com/testunit is valid and connected
admin_client.jar
コマンドのオンライン・ヘルプ・テキストをコンソールに出力するには、-help
とコマンドラインに入力するだけです。次に例を示します。
java -jar admin_client.jar -help
特定のコマンドの詳細なヘルプを表示するには、-usage
の後に続けてコマンド識別子を入力します。次に例を示します。
java -jar admin_client.jar -usage [command]
admin_client.jar
の実行中に発生するエラーのトラブルシューティングを支援するために、このツールを実行する際にJavaロギングを有効にできます。ログ・メッセージはコンソールに出力されます。
ロギングを有効にするには、次のようにします。
次の1行を記述したlogging.properties
ファイルを作成します。
oracle.oc4j.admin.jmx.client.CoreRemoteMBeanServer.level=INFO
このファイルをORACLE_HOME
/j2ee/
instance
以外の場所に作成する場合は、後述のコマンドでファイルへのパスを指定する必要があります。
次のように-Djava.util.logging.config.file=logging.properties
をadmin_client.jar
コマンドラインに設定します。
java -Djava.util.logging.config.file=logging.properties -jar admin_client.jar uri adminId adminPassword command
logging.properties
ファイルの値には、表6-4のJavaログ・レベル値のいずれかを設定できます。
表6-4 Javaログ・レベル
Javaログ・レベル | 説明 |
---|---|
SEVERE |
システム管理者が注意する必要があるシステム・エラーを記録します。 |
WARNING |
エラーが発生する前に確認して処理する必要があるとして検出されたアクションまたは条件を記録します。 |
INFO |
標準のアクションまたはイベントを記録します。ユーザー操作(「ログイン完了」など)や自動操作(ログイン・ファイルの循環など)が該当します。 |
CONFIG |
ログ構成に関連するログ・メッセージまたは問題。 |
FINE |
デバッグやパフォーマンスの監視に使用されるトレースまたはデバッグのメッセージを記録します。通常、詳細なイベント・データが含まれます。 |
FINER |
非常に詳細なトレースまたはデバッグのメッセージを記録します。 |
FINEST |
きわめて詳細なトレースまたはデバッグのメッセージを記録します。 |
次に例を示します。
oracle.oc4j.admin.jmx.client.CoreRemoteMBeanServer.level=FINE
-addWebSite
コマンドを使用して、スタンドアロンOC4Jインスタンスまたはクラスタ内のOC4JインスタンスにWebサイトを追加できます。新しいWebサイトには、デフォルトWebサイトからのデフォルトWebアプリケーションが含まれます。OC4J Webサイトの詳細、およびWebサイトの手動での追加方法は、第13章「OC4JでのWebサイトの管理」を参照してください。
注意: -addWebSite コマンドは、グループ内の複数のOC4JインスタンスにWebサイトを作成する場合には使用できません。 |
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addWebSite -webSiteName site-name -protocol protocol -port port [-keystorePath path] [-keystorePassword password] [-sslProvider class-name]
次の例では、OC4Jスタンドアロン・インスタンス上にtest-web-site
という名前の新しいWebサイトを作成しています。
java -jar admin_client.jar deployer:oc4j:localhost:23791 oc4jadmin welcome1 -addWebSite -webSiteName test-web-site.xml -protocol http -port 8899
表6-5 -addWebSiteコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。Webサイトの名前。 |
|
必須。Webサイトで使用されるプロトコル。プロトコルは、 |
|
必須。Webサイトで使用されるポート番号。2つのWebサイトで同じポート番号を共有できるのは、 |
|
任意。キーストア・ファイルのファイル名(パスを含む)。このパラメータは、 |
|
任意。キーストア・ファイルのパスワード。このパラメータは、 |
|
任意。サード・パーティ |
admin_client.jar
ユーティリティを使用して、アプリケーション(EARまたはアプリケーション・ディレクトリ)、スタンドアロンWebモジュール(WAR)、スタンドアロンEJBモジュール(JAR)またはスタンドアロン・リソース・アダプタ(RAR)を、特定のOC4JインスタンスまたはOC4Jインスタンス・グループにデプロイすることができます。
この項の内容は次のとおりです。
注意: グループにアーカイブをデプロイするには、すべてのインスタンスが同じoc4jadmin アカウントのパスワードを保持する必要があります。 |
-deploy
コマンドを使用して、EARファイルとしてパッケージされたJ2EEアプリケーションや、標準のエンタープライズ・アプリケーション・ディレクトリ構造のJ2EEアプリケーションをデプロイします。J2EEアプリケーションのモジュールは、パッケージすることも、ディレクトリ構造のままにしておくこともできます。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -deploy -file path/filename -deploymentName appName [-bindAllWebApps [webSiteName]] [-targetPath path] [-parent appName] [-deploymentDirectory path] [sequential [waitsec]] [-enableIIOP] [-iiopClientJar path/filename] [-deploymentPlan path/filename] [-removeArchive]
-bindAllWebApps
パラメータを指定して、EAR内のすべてのWebモジュールをそのアクセスに使用されるWebサイトにバインドできます。Webサイトを指定しない場合、モジュールはデフォルトWebサイトにバインドされます。
たとえば、次のコマンドは、クラスタ内のグループdefault_group
に属するすべてのOC4Jインスタンスに、utility
アプリケーションをデプロイします。アプリケーション内のすべてのWebモジュールは、デフォルトWebサイトにバインドされます。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -deploy -file C:/dev/utility.ear -deploymentName utility -bindAllWebApps
また、アプリケーションを標準のJ2EEアプリケーション・ディレクトリ構造でアセンブルすることもできます。-file
パラメータを使用してディレクトリを指定します。次の例では、utility
ディレクトリ内にあるアプリケーションをデプロイしています。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -deploy -file C:/dev/utility -deploymentName utility -bindAllWebApps
表6-6 EARデプロイの-deployコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイするアーカイブまたはアプリケーション・ディレクトリのファイル・パス。ディレクトリ・ベースのデプロイを使用する場合は、アプリケーション・ディレクトリを標準のJ2EEアプリケーション・ディレクトリ構造でアセンブルする必要があります。 |
|
必須。ユーザー定義のアプリケーションのデプロイ名。OC4J内でアプリケーションを識別する際に使用されます。 |
|
任意。EAR内のすべてのWebモジュールを指定されたWebサイトにバインドします。何も指定されない場合は、デフォルトWebサイトにバインドします。
このパラメータが指定されていない場合は、デプロイ後に |
|
任意。EARのデプロイ先となるディレクトリ。ディレクトリが指定されていない場合、EARは また、デプロイ済EARファイルもこのディレクトリにコピーされます。後続のデプロイのたびに、このEARファイルは上書きされます。 |
|
任意。このアプリケーションの親アプリケーション。デフォルトは、 |
|
任意。アプリケーションに適用するデプロイ・プランのパスおよびファイル名。プランは、前回のデプロイ時にXMLファイルとして保存されています。ファイルは、ローカル・ホスト上に存在する必要があります。 |
|
任意。OC4J固有のデプロイメント・ディスクリプタおよび生成済ファイル(コンパイル済JSPクラスやEJBラッパー・クラスなど)が格納されるディレクトリ。 デフォルトのディレクトリは、 |
|
任意。グループ内の各OC4Jインスタンスにアーカイブをデプロイする場合に指定します。各ターゲットOC4Jインスタンスへのデプロイは、次のターゲット・インスタンスでデプロイが始まる前に完了する必要があります。リクエストは、EARをデプロイ中のOC4Jインスタンスにはルーティングされません。 次のように、 -sequential 15
このパラメータが指定されていない場合、アーカイブはデフォルトで、グループ内のすべてのOC4Jインスタンスに同時にデプロイされます。 このオプションは、クラスタ化された環境でのみ有効です。スタンドアロンOC4Jでは無効です。 |
|
任意。OC4JサーバーでIIOPクライアント・スタブを生成する場合にこのパラメータを指定します。 すべてのEJBモジュールに対して生成されるアプリケーション・レベルのスタブは、 この機能を使用するには、OC4Jの起動時に |
|
任意。IIOPクライアント・スタブの出力先となるJARのパスおよびファイル名。 すべてのEJBモジュールに対して生成されるアプリケーション・レベルのスタブは、 また、各EJBモジュールに対するスタブは、 この機能を使用するには、OC4Jの起動時に |
|
任意。デプロイ後にサーバーのファイルシステムから削除するEARファイルを指定します。 |
次の例では、リモート・クライアントからOracle Application Serverの特定のOC4JインスタンスにEARをデプロイする方法を示します。
cd j2ee/home >java -jar admin_client.jar deployer:oc4j:opmn://test-cycle.oracle.com/testunit oc4jadmin welcome1 -deploy -file d:\temp\rupg\testru.ear -deploymentName testru –bindAllWebApps 06/06/20 17:00:16 Notification ==>Uploading file testru.ear ... 06/06/20 17:00:18 Notification ==>Application Deployer for testru STARTS. 06/06/20 17:00:19 Notification ==>Copy the archive to /scratch/sbutton/m1_060618/j2ee/admin/applications/testru.ear 06/06/20 17:00:19 Notification ==>Initialize /scratch/sbutton/m1_060618/j2ee/admin/applications/testru.ear begins... 06/06/20 17:00:19 Notification ==>Unpacking testru.ear 06/06/20 17:00:20 Notification ==>Done unpacking testru.ear 06/06/20 17:00:20 Notification ==>Unpacking testru-web.war 06/06/20 17:00:20 Notification ==>Done unpacking testru-web.war 06/06/20 17:00:20 Notification ==>Initialize /scratch/sbutton/m1_060618/j2ee/admin/applications/testru.ear ends... 06/06/20 17:00:20 Notification ==>Starting application : testru 06/06/20 17:00:20 Notification ==>Initializing ClassLoader(s) 06/06/20 17:00:20 Notification ==>Initializing EJB container 06/06/20 17:00:20 Notification ==>Loading connector(s) 06/06/20 17:00:20 Notification ==>Starting up resource adapters 06/06/20 17:00:20 Notification ==>Initializing EJB sessions 06/06/20 17:00:20 Notification ==>Committing ClassLoader(s) 06/06/20 17:00:20 Notification ==>Initialize testru-web begins... 06/06/20 17:00:20 Notification ==>Initialize testru-web ends... 06/06/20 17:00:21 Notification ==>Started application : testru 06/06/20 17:00:21 Notification ==>Binding web application(s) to site default-web-site begins... 06/06/20 17:00:21 Notification ==>Binding testru-web web-module for application testru to site default-web-site under context root /testru 06/06/20 17:00:22 Notification ==>Binding web application(s) to site default-web-site ends... 06/06/20 17:00:22 Notification ==>Application Deployer for testru COMPLETES. Operation time: 3785 msecs
-deploy
コマンドを使用して、WARファイルとしてパッケージされたスタンドアロンWebモジュールをデプロイします。
注意: -deploy コマンドは、スタンドアロンWebモジュールのディレクトリ・ベースのデプロイをサポートしていません。Webモジュールは、WARファイルとしてパッケージする必要があります。ただし、Webモジュール・ディレクトリが個別のMETA-INF/application.xml ファイルとともにJ2EEアプリケーション・ディレクトリ構造に含まれている場合は、Webモジュールのディレクトリ・ベースのデプロイがサポートされます。この場合は、Webモジュールではなくアプリケーションをデプロイしてください。 |
WAR固有の構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -deploy -file path/filename -deploymentName appName [-bindAllWebApps [webSiteName]] [-targetPath path] [-parent appName] [-deploymentDirectory path] [-contextRoot context] [-removeArchive]
WARは、まだWebモジュール・コンポーネントがない別のデプロイ済アプリケーションの子として指定できます。指定しない場合、WARはdefault
アプリケーションにデプロイされます。
WARは、すでにWebモジュールが存在するアプリケーションの子としてはデプロイできません。つまり、acme
アプリケーションにすでにacme-web.war
がある場合、そのアプリケーションには追加のWARファイルをデプロイできません。かわりに、アプリケーションのEARファイルにWARを再パッケージし、そのアプリケーションを再デプロイします。
次のコマンドでは、node1
をメンバーとして含むクラスタ内のdefault_group
に属するすべてのOC4Jインスタンスで、スタンドアロンacme-web.war
Webモジュールがdefault
アプリケーションにデプロイされます。-bindAllWebApps
パラメータが指定されていますが、バインド先のWebサイトが指定されていないため、モジュールはデフォルトWebサイトにバインドされます。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -deploy -file C:/dev/acme-web.war -deploymentName utility -bindAllWebApps -parent default
表6-7 WARデプロイの-deployコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイするアーカイブのパスおよびファイル名。 |
|
必須。Webモジュールのユーザー定義の名前。OC4J内でWebモジュールを識別する際に使用されます。 |
|
任意。Webモジュールを指定されたWebサイトにバインドします。何も指定されない場合は、デフォルトWebサイトにバインドします。
|
|
任意。アーカイブのデプロイ先となるディレクトリ。ディレクトリが指定されていない場合、アーカイブは また、スタンドアロンWARファイルが含まれる生成済EARファイルもこのディレクトリにコピーされます。後続のデプロイのたびに、このアーカイブは上書きされます。 |
|
任意。モジュールのデプロイ先となる親アプリケーション。デフォルトは |
|
任意。OC4J固有のデプロイメント・ディスクリプタおよび生成済ファイル(コンパイル済JSPクラスなど)が格納されるディレクトリ。 デフォルトのディレクトリは、 |
|
任意。Webモジュール・コンテキスト・ルート。Webブラウザを介してアプリケーションにアクセスするために使用されるURLの最後に追加されます。コンテキスト・ルートを指定しない場合は、 たとえば、コンテキスト・ルートとして
|
|
任意。デプロイ後にサーバーのファイルシステムから削除するWARファイルを指定します。 |
-deploy
コマンドを使用して、JARファイルとしてパッケージされたスタンドアロンEJBモジュールをデプロイします。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -deploy -file path/filename -deploymentName jarName [-targetPath path] [-parent appName] [-deploymentDirectory path] [-removeArchive]
次のコマンドでは、node1
をメンバーとして含むクラスタ内のdefault_group
に属するすべてのOC4Jインスタンスで、スタンドアロンacme-ejb.jar
EJBモジュールがdefault
アプリケーションにデプロイされます。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -deploy -file C:/dev/acme-ejb.jar -deploymentName acme
表6-8 EAR JARデプロイの-deployコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイするアーカイブのパスおよびファイル名。 |
|
必須。EJBモジュールのユーザー定義の名前。OC4J内でモジュールを識別する際に使用されます。 |
|
任意。EJB JARのデプロイ先となるディレクトリ。ディレクトリが指定されていない場合、EJB JARは また、デプロイ済EJB JARファイルもこのディレクトリにコピーされます。後続のデプロイのたびに、このEJB JARファイルは上書きされます。 |
|
任意。EJBモジュールのデプロイ先となる親アプリケーション。デフォルトは |
|
任意。OC4J固有のデプロイメント・ディスクリプタが含まれるディレクトリ。デフォルトのディレクトリは、 |
|
任意。デプロイ後にサーバーのファイルシステムからJARファイルを削除します。 |
-deploy
コマンドを使用して、RARファイルとしてパッケージされたJavaコネクタ・アーキテクチャに準拠するリソース・アダプタをデプロイまたは再デプロイします。デフォルトでは、リソース・アダプタはORACLE_HOME
/j2ee/
instance
/connectors
ディレクトリにデプロイされます。
スタンドアロンRARの再デプロイまたはアンデプロイでは、default
アプリケーションを再起動する必要はありません。
RAR固有の構文は次のとおりです。
java -jar admin_client.jar uriadminId
adminPassword
-deploy -filepath/filename
-deploymentNameconnectorName
[-nativePathLibpath
] [-grantAllPermissions] [-removeArchive]
次のコマンドは、クラスタ内のdefault_group
に属するすべてのOC4Jインスタンスにacme-rar.rar
モジュールをデプロイします。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -deploy -file /dev/acme-rar.rar -deploymentName acme-rar -grantAllPermissions -removeArchive
表6-9 RARデプロイの-deployコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイするRARファイルのパスおよびファイル名。 |
|
必須。ユーザー定義のコネクタ名。OC4J内でコネクタを識別する際に使用されます。 |
|
任意。RARファイル内の、ネイティブ・ライブラリ(DLLなど)を格納するディレクトリへのパス。 |
|
任意。必要に応じて、リソース・アダプタによってリクエストされるすべてのランタイム権限を付与する場合にこのパラメータを指定します。 |
|
任意。デプロイ後にサーバーのファイルシステムからRARファイルを削除する場合にこのパラメータを指定します。 |
詳細は、『Oracle Containers for J2EEデプロイメント・ガイド』のリソース・アダプタのデプロイに関する項を参照してください。
admin_client.jar
コマンドラインのデプロイ・コマンドを含むスクリプト・ファイルを指定できます。-script
コマンドでファイルを指定すると、admin_client.jar
によりデプロイメント・マネージャへの1つの接続のみでコマンドのリストを実行できます。バッチ・デプロイの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -script filename
スクリプト・ファイルfilename
には、この例のように複数の行が含まれます。
-deploy -file /scratch/rpan/apps/hello-planet.ear -deploymentName hello-planet -bindWebApp -appName hello-planet -webModuleName hello-planet-web -stop hello-planet -start hello-planet -redeploy -file /scratch/rpan/apps/hello-planet.ear -deploymentName hello-planet -bindAllWebApps -undeploy hello-planet -validateURI
インストールのスクリプトまたはログを参照し、既存のコンフィギュレーション・アシスタントによって使用される関連行を抽出することで、バッチ・モードに変換できます。
admin_client.jar
ユーティリティを使用すると、WebサイトへのWebモジュールのバインド、WebサイトからのWebモジュールのアンバインド、およびWebサイトの現在のWebモジュール・バインディングの一覧表示を行うことができます。これらのコマンドは、特定のOC4Jインスタンスに対して実行することも、クラスタ内のOC4Jインスタンス・グループに対して実行することもできます。
この項の内容は次のとおりです。
OC4Jにデプロイされた各Webモジュールは、そのアクセスに使用されるWebサイトにバインドする必要があります。
通常、EAR内のWARファイルとしてパッケージされたWebモジュールは、-deploy
コマンドで-bindAllWebApps
パラメータを使用して、EARのデプロイ時にバインドします。しかし、EARのデプロイ時に-bindAllWebApps
パラメータを指定しなかった場合は、次の各項で説明するように、デプロイ後にモジュールをWebサイトにバインドできます。
-bindAllWebApps
コマンドを使用して、J2EEアプリケーション内のすべてのWebモジュールを同じWebサイトにバインドするか、デフォルトでdefault-web-site
にバインドします。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri
adminId adminPassword -bindAllWebApps
-appName appName -webSiteName siteName -shared true/false -loadOnStartup
true/false -accessLog true/false
表6-10 -bindAllWebAppsコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイ時に指定された親アプリケーションの名前。 |
|
任意。Webモジュールのバインド先のWebサイト名。 このパラメータを指定しない場合、WebモジュールはターゲットOC4JインスタンスのデフォルトWebサイト( |
|
任意。HTTPとHTTPSの間でアプリケーションを共有できます。デフォルトは |
|
任意。起動時にアプリケーションをロードできます。デフォルト値は |
|
任意。アプリケーションのアクセス・ロギングを有効化できます。デフォルト値は |
-bindWebApp
コマンドを使用して、J2EEアプリケーション内の特定Webモジュールを、指定するWebサイトまたはデフォルトのWebサイトにバインドします。また、Webモジュールへのアクセスに使用されるコンテキスト・ルートを設定することもできます。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -bindWebApp -appName name -webModuleName name -webSiteName name -contextRoot contextRoot -shared true/false -loadOnStartup true/false -accessLog true/false
表6-11 -bindWebAppコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイ時に指定された親アプリケーションの名前。 |
|
必須。バインドするWebモジュールの名前。この値は、EARファイル内に含まれるWARファイルの名前( |
|
任意。Webモジュールのバインド先のWebサイト名。 このパラメータを指定しない場合、WebモジュールはターゲットOC4JインスタンスのデフォルトWebサイト( |
|
任意。Webモジュールのコンテキスト・ルート。この値は、Webブラウザを介してアプリケーションにアクセスするために使用されるURLの最後に追加されます。次に例を示します。
コンテキスト・ルートを指定しない場合は、親アプリケーションの |
|
任意。HTTPとHTTPSの間でアプリケーションを共有できます。デフォルトは |
|
任意。起動時にアプリケーションをロードできます。デフォルト値は |
|
任意。アプリケーションのアクセス・ロギングを有効化できます。デフォルト値は |
デプロイ後にWebモジュールをWebサイトからアンバインドできます。WebサイトからすべてのWebモジュールをアンバインドすることも、Webサイトから特定のWebモジュールをアンバインドすることもできます。
-unbindAllWebApps
コマンドを使用して、OC4Jインスタンス内、またはクラスタを構成するOC4Jインスタンス・グループ内のWebサイトから、すべてのWebモジュール・バインディングを削除します。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -unbindAllWebApps -appName appname [-webSiteName web-site-name]
次の例では、OPMNリクエスト・ポート6003
でリスニングしている複数のOC4Jインスタンスで構成されるクラスタ内のdefault-web-site
という名前のすべてのWebサイトから、hello
アプリケーションに属するすべてのWebモジュールをアンバインドしています。
java -jar admin_client.jar deployer:cluster:opmn://localhost:6003/default_group oc4jadmin welcome1 -unbindAllWebApps -appName hello -webSiteName default-web-site
-unbindWebApp
コマンドを使用して、OC4Jインスタンス内、またはクラスタを構成するOC4Jインスタンス・グループ内の特定のWebサイトから、特定のWebモジュール・バインディングを削除します。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -unbindWebApp -appName appname -webModuleName web-module-name [-webSiteName web-site-name]
次の例では、OC4Jスタンドアロン・インスタンスのWebサイトdefault-web-site
からhello
アプリケーションのWebモジュールhello-web
をアンバインドしています。
java -jar admin_client.jar deployer:oc4j:localhost:23971 oc4jadmin welcome1 -unbindWebApp -appName hello -webModuleName hello-web
表6-13 -unbindWebAppコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。デプロイ時に指定された親アプリケーションの名前。 |
|
必須。アンバインドするWebモジュールの名前。この値は、EARファイル内に含まれるWARファイルの名前( |
|
任意。WebモジュールをアンバインドするWebサイト名。 このパラメータを指定しない場合、WebモジュールはターゲットOC4JインスタンスのデフォルトWebサイト( |
-listWebBindings
コマンドを使用して、OC4Jインスタンス内、またはクラスタを構成するOC4Jインスタンス・グループ内のWebモジュールごとに、Webサイト・バインディングを表示します。デフォルトでは、アプリケーション名、モジュール名、コンテキスト・ルートおよびWebサイト名の情報が表示されます。さらに詳細な情報を表示するには、後述する-verbose
オプションを使用してください。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -listWebBindings [webSiteName web-site-name][-verbose]
次の例では、OPMNリクエスト・ポート6003
でリスニングしている複数のOC4Jインスタンスで構成されるクラスタ内のdefault-web-site
という名前のすべてのWebサイトにバインドされているWebモジュールの詳細情報が表示されます。
java -jar admin_client.jar deployer:cluster:opmn://localhost:6003/default_group oc4jadmin welcome1 -listWebBindings -webSiteName default-web-site -verbose
-redeploy
コマンドを使用して、すでにデプロイされたアーカイブを再デプロイします。
この操作は、アプリケーションが稼働中の場合はそのアプリケーションを停止した後にアーカイブをアンデプロイして、正常な再デプロイを実行します。その後、アプリケーションのデプロイおよび再起動を実行します。一方、-deploy
コマンドによるアーカイブの再デプロイは、アプリケーションを停止せず、単にアンデプロイおよび再デプロイした後に再起動します。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -redeploy -file path/filename -deploymentName appName [-bindAllWebApps] [-isConnector] [-keepSettings] [-sequential [waitsec]] [-removeArchive]
表6-15 -redeployコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。再デプロイするEAR、WARまたはRARファイルのパスおよびファイル名。 |
|
必須。ユーザー定義のアプリケーションのデプロイ名。OC4J内でアプリケーションを識別する際に使用されます。この値は、サーバーの既存アプリケーションの名前と一致する必要があります。 |
|
スタンドアロンRARの再デプロイに必要。 |
|
任意。EAR内のすべてのWebモジュールを指定されたWebサイトにバインドします。何も指定されない場合は、デフォルトWebサイトにバインドします。
別の方法として、「デプロイ後のWebサイトへのWebモジュールのバインド」の手順に従って、後からすべてのWebモジュールをWebサイトにバインドできます。 |
|
任意。このパラメータを指定する場合、再デプロイされるアプリケーションは、前回のデプロイからデプロイ・プランを取得して使用します。アーカイブにパッケージされたデプロイメント・ディスクリプタに設定される値は、無視されます。 このパラメータを指定しない場合、アーカイブにパッケージされたデプロイメント・ディスクリプタの値に設定されます。 |
|
任意。グループ内の各OC4Jインスタンスに順番にアーカイブを再デプロイする場合に指定します。各ターゲットOC4Jインスタンスへの再デプロイは、次のターゲット・インスタンスで再デプロイが始まる前に完了する必要があります。リクエストは、アーカイブを再デプロイ中のOC4Jインスタンスにはルーティングされません。 次のように、 -sequential 15 このパラメータが指定されていない場合、アーカイブはデフォルトで、グループ内のすべてのOC4Jインスタンスに同時にデプロイされます。 このオプションは、クラスタ化された環境でのみ有効です。スタンドアロンOC4Jでは無効です。 |
|
任意。デプロイ後にサーバーのファイルシステムから削除するEAR、WARまたはRARファイルを指定します。 |
|
任意。失敗した再デプロイからのリカバリを可能にします。可能な場合、以前のアーカイブが再デプロイされます。 |
admin_client.jar -redeploy
コマンドの-sequential
パラメータを指定してアプリケーションをグループに再デプロイすると、再デプロイ操作がシリアル化されます。再デプロイは一度に1つのOC4Jインスタンスに対して行われるため、ターゲット・アプリケーションが完全に停止状態になることはありません。順次再デプロイでは、現在のOC4Jインスタンスでの再デプロイ操作が完了するとすぐに、デプロイメント・マネージャにより、アプリケーション・クラスタのメンバーを実行している次のOC4Jインスタンスでの再デプロイが開始されます。その結果、システムが安定した状態にならず、次の再デプロイが始まる前に新しいアプリケーション・インスタンスが完全にアクティブになり、次のような問題の原因となります。
アプリケーションが1つのOC4Jインスタンスで停止し、別のインスタンスで使用可能であることがmod_oc4j
に通知されるまでの間、アプリケーションにアクセスできなくなる場合があります。
セッション・レプリケーション・アクティビティを実行する機会がない場合があります。
admin_client.jar -redeploy
コマンドを使用してクラスタにアプリケーションを再デプロイすると、-sequential
および-keepsettings
パラメータを指定しても、アプリケーションのセッション状態が失われる場合があります。
-sequential
パラメータのwaitsec
オプションを使用して、アプリケーション・クラスタを実行している別のOC4Jインスタンスへの再デプロイ間の秒数を指定できます。この遅延により、セッション状態のレプリケーションに十分な時間を設けられます。
オプションのwaitsec
値を指定すると、デプロイメント・マネージャは、グループ内のOC4Jインスタンスにおける再デプロイ操作の間に、指定された秒数待機します。グループ全体に再デプロイ操作が発生した場合、この遅延によりシステムが安定し、アプリケーションにアクセスできなくなることや、セッション状態が失われることが少なくなります。
たとえば、次のadmin_client.jar -redeploy
コマンドでは、別のOC4Jインスタンスへの再デプロイ間に15秒の遅延が指定されています。
java -jar admin_client.jar deployer:cluster:opmn://host:port/home oc4jadmin password -redeploy -file "myapp.ear" -deploymentName rolling -sequential 15 -keepsettings
新しいwaitsec
オプションも、admin_client.jar -deploy
コマンドの-sequential
パラメータに適用できます。
-undeploy
コマンドは、次の各項で説明するように、アプリケーション、スタンドアロンWebモジュール、スタンドアロンEJBモジュールまたはスタンドアロン・コネクタ・モジュールをターゲットOC4Jインスタンスから削除します。
EAR、スタンドアロンWebモジュールまたはスタンドアロンEJB JARをアンデプロイすると、OC4Jランタイムから削除されます。既存のWebサイトのバインディングも同様に削除されます。
EAR、スタンドアロンWARまたはスタンドアロンEJB JARをアンデプロイする構文は次のとおりです。アプリケーションまたはモジュールの名前を指定する必要があります。
java -jar admin_client.jar uri adminId adminPassword -undeploy appName
-updateEJBModule
コマンドは、OC4JインスタンスまたはOC4Jインスタンスのグループで稼働中のアプリケーションにおいて、EJBモジュールの増分的または部分的な再デプロイを実行します。この機能により、EJB JAR内の変更されたBeanのみを再デプロイできます。
注意: 増分的な再デプロイは、CMPまたはBMPエンティティBeanにアプリケーション全体を再デプロイするよりも効率的ですが、セッションBean、メッセージドリブンBeanまたはEJB 3.0 JPAエンティティでは当てはまりません。この機能の使用に関する詳細は、『Oracle Containers for J2EEデプロイメント・ガイド』の更新されたEJBモジュールの増分再デプロイに関する項を参照してください。 |
デプロイ済のEJBモジュールで変更されたクラスを更新する構文は、次のとおりです。EJB JARが構成するアプリケーションの名前を指定する必要があります。スタンドアロンEJBモジュールを更新する場合は、default
アプリケーションを指定します。
java -jar admin_client.jar uri adminId adminPassword -updateEJBModule -appName appName -ejbModuleName ejbJarName -file path/ejbJarName
次に例を示します。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -updateEJBModule -appName petstore -ejbModuleName customerEjb.jar -file build/customerEjb.jar
admin_client.jar
ユーティリティを使用すると、次の項で説明するように、OC4JインスタンスまたはOC4Jインスタンスのグループで共有ライブラリの作成および管理を実行できます。
-publishSharedLibrary
コマンドを使用すると、特定のOC4JインスタンスまたはOC4Jインスタンスのグループに共有ライブラリのディレクトリ構造を作成し、ライブラリを構成するバイナリをその中にインストールできます。共有ライブラリは、各OC4JインスタンスのORACLE_HOME
/j2ee/
instance
/shared-lib
ディレクトリに作成されます。
また、このコマンドは、各OC4Jインスタンスのserver.xml
ファイルの<shared-library>
要素内に共有ライブラリを宣言し、アプリケーションで使用できるようにします。
共有ライブラリのインストールの構文は次のとおりです。複数のコード・ソース(共有ライブラリを構成するバイナリ)のパスおよびファイル名は、それぞれを空白で区切って指定できます。
java -jar admin_client.jar uri adminId adminPassword -publishSharedLibrary -name libName -version libVersion [-parentName parentLibName] [-parentVersion parentLibVersion] [-installCodeSources path [path ...]] [-addCodeSources path [path ...]] [-imports sharedLibName [:min-version][,max-version] [sharedLibName ...]]
次のコマンドは、クラスタ内のOC4Jインスタンス(default_group
のすべてのメンバー)のグループにacme.common:2.5
共有ライブラリをデプロイします。
java -jar admin_client.jar deployer:cluster:opmn://server.company.com:6004/default_group oc4jadmin password -publishSharedLibrary -name acme.common -version 2.5 -installCodeSources /myserver/tmp/acme-apis.jar /myserver/tmp/acmeImpl.jar
ターゲットOC4Jサーバー内の結果のディレクトリ構造は、次のとおりです。
ORACLE_HOME/j2ee/home/shared-lib
/acme.common
/2.5
acme-apis.jar
acmeImpl.jar
表6-17 -publishSharedLibraryコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。共有ライブラリの名前。 共通APIが複数のベンダーによって実装される場合は、 |
|
必須。共有ライブラリのバージョン番号。この値はコードの実装バージョンを反映することをお薦めします。 |
|
任意。該当する場合は、親共有ライブラリの名前。 |
|
任意。該当する場合は、親共有ライブラリのバージョン番号。 |
|
OC4Jインスタンスにアップロードし、共有ライブラリの一部としてインストールする1つ以上のJARまたはZIPファイルのパスおよびファイル名。パスまたはファイル名の各文字列は、空白で区切ります。 |
|
任意。共有ライブラリに追加するためにすでに1つ以上のOC4JインスタンスにアップロードされているJARまたはZIPファイルのパスおよびファイル名。パスまたはファイル名の各文字列は、空白で区切ります。 |
|
任意。この共有ライブラリにインポートする1つ以上の既存の共有ライブラリの名前。各名前の文字列は空白で区切ります。 インポートするライブラリの最高または最低、あるいはその両方のバージョンを指定できます。 |
-modifySharedLibrary
コマンドを使用すると、既存の共有ライブラリの内容を変更できます。また、このコマンドは、各OC4Jインスタンスのserver.xml
ファイル内にある共有ライブラリ定義を更新します。
既存の共有ライブラリを変更する構文は次のとおりです。複数のコード・ソース(共有ライブラリを構成するバイナリ)のパスおよびファイル名は、それぞれを空白で区切って指定できます。
java -jar admin_client.jar uri adminId adminPassword -modifySharedLibrary -name libName -version libVersion [-installCodeSources path [path ...]] [-addCodeSources path [path ...]] [-removeCodeSources path [path ...]] [-addImports sharedLibName[:min-version][,max-version] [sharedLibName ...]] [-removeImports sharedLibName[:min-version][,max-version] [sharedLibName ...]]
次のコマンドは、acme.common:2.5
共有ライブラリを更新します。
java -jar admin_client.jar deployer:cluster:opmn://server.company.com:6004/default_group oc4jadmin password -modifySharedLibrary -name acme.common -version 2.5 -addCodeSources /myserver/tmp/acme-helpers.jar
表6-18 -modifySharedLibraryコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。更新する共有ライブラリの名前。 |
|
必須。更新する共有ライブラリのバージョン番号。 |
|
任意。1つ以上のOC4Jインスタンスにアップロードし、共有ライブラリの一部としてインストールするJARまたはZIPファイルのパスおよびファイル名。パスまたはファイル名の各文字列は、空白で区切ります。 |
|
任意。共有ライブラリに追加するためにすでにOC4Jインスタンスにアップロードされている1つ以上のJARまたはZIPファイルのパスおよびファイル名。パスまたはファイル名の各文字列は、空白で区切ります。 |
|
任意。共有ライブラリから削除する1つ以上のJARまたはZIPファイルのパスおよびファイル名。パスまたはファイル名の各文字列は、空白で区切ります。 |
|
任意。この共有ライブラリにインポートする1つ以上の既存の共有ライブラリの名前。各名前の文字列は空白で区切ります。 インポートするライブラリの最高または最低、あるいはその両方のバージョンを指定できます。 |
|
任意。この共有ライブラリから削除する1つ以上の既存の共有ライブラリの名前。 削除するライブラリの最高または最低、あるいはその両方のバージョンを指定できます。 |
-describeSharedLibrary
コマンドを使用して、指定された共有ライブラリを構成するコード・ソースとインポート済共有ライブラリを表示します。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -describeSharedLibrary -name libName -version libVersion
-listSharedLibraries
コマンドを使用して、1つ以上のターゲットOC4Jインスタンスに定義されているすべての共有ライブラリのリストを出力します。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -listSharedLibraries
注意: JDK 1.4を使用している場合、Oracle Application Server 10gリリース3(10.1.3.5.0)ではJDKに同梱されているXalanライブラリを共有ライブラリとして使用することはできません。Xalanライブラリを使用するには、次の2つの方法があります。
|
-removeSharedLibrary
コマンドを使用して、OC4Jターゲットから共有ライブラリを削除します。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -removeSharedLibrary -name libName -version libVersion
-addImportSharedLibrary
コマンドを使用して、既存の共有ライブラリをアプリケーションのクラス・ローダーにインポートします。このコマンドは、アプリケーションのorion-application.xml
ディスクリプタに<import-shared-library>
要素を追加することに相当します。このコマンドでは、変更を有効にするためにアプリケーションを再起動する必要があります。共有ライブラリのインストール手順は、「共有ライブラリのインストール」を参照してください。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addImportSharedLibrary -appName application -name name -minVer MinVersion -maxVer MaxVersion
次の例では、oracle.jdbc
共有ライブラリをMyapp
という名前のアプリケーションにインポートしています。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addImportSharedLibrary -appName Myapp -name oracle.jdbc
-deleteImportSharedLibrary
コマンドを使用して、アプリケーションのクラス・ローダーから共有ライブラリを削除します。このコマンドは、アプリケーションのorion-application.xml
ディスクリプタから<import-shared-library>
要素を削除することに相当します。このコマンドでは、変更を有効にするためにアプリケーションを再起動する必要があります。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -deleteImportSharedLibrary -appName application -name name
次の例では、Myapp
という名前のアプリケーションからoracle.jdbc
共有ライブラリを削除しています。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -deleteImportSharedLibrary -appName Myapp -name oracle.jdbc
-addRemoveInheritedSharedLibrary
コマンドを使用して、アプリケーションのクラス・ローダーが共有ライブラリを継承しないように設定します。このコマンドは、アプリケーションのorion-application.xml
ディスクリプタに<remove-inherited>
要素を追加することに相当します。このコマンドでは、変更を有効にするためにアプリケーションを再起動する必要があります。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addRemoveInheritedSharedLibrary -appName application -name name
次の例では、Myapp
という名前のアプリケーションがoracle.jdbc
共有ライブラリを継承しないように設定しています。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addRemoveInheritedSharedLibrary -appName Myapp -name oracle.jdbc
-deleteRemoveInheritedSharedLibrary
コマンドを使用して、アプリケーションのクラス・ローダーが共有ライブラリを継承できるように設定します。このコマンドは、アプリケーションのorion-application.xml
ディスクリプタから<remove-inherited>
要素を削除することに相当します。このコマンドでは、変更を有効にするためにアプリケーションを再起動する必要があります。構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -deleteRemoveInheritedSharedLibrary -appName application -name name
次の例では、Myapp
という名前のアプリケーションがoracle.jdbc
共有ライブラリを継承できるように設定しています。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -deleteRemoveInheritedSharedLibrary -appName Myapp -name oracle.jdbc
admin_client.jar
ユーティリティを使用すると、特定のOC4Jインスタンスで、またはOC4Jインスタンスのグループで、アプリケーションおよびその子アプリケーションを起動、再起動または停止できます。また、特定のOC4JインスタンスまたはOC4Jインスタンス・グループ内のデプロイ済アプリケーションのステータスを一覧表示することもできます。この項の内容は次のとおりです。
-start
コマンドを使用して、ターゲットOC4Jインスタンスのアプリケーションおよびその子アプリケーションを起動します。アプリケーション内に更新されたファイルがある場合、それらのアプリケーションは起動時に自動的に再デプロイされます。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -start appName
-start
コマンドでは、デプロイ時に指定したアプリケーション名が必要となります。次の例では、クラスタ内のnode2
のascontrol
アプリケーションを起動しています。
java -jar admin_client.jar deployer:oc4j:opmn://node2.company.com:6004/home oc4jadmin password -start ascontrol
-stop
コマンドを使用して、ターゲットOC4Jインスタンスのアプリケーションおよびその子アプリケーションを停止します。デフォルトでは、アプリケーションが即時に停止されます。現在処理中のリクエストはすべて失われます。計画的に停止する場合は、停止前にリクエストの処理を完了するための時間をアプリケーションに設定することもできます。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -stop appName [-timeout timeInSeconds] [-graceful true|false]
-stop
コマンドでは、デプロイ時に指定したアプリケーション名が必要となります。次の例では、クラスタ内のnode2
のascontrol
アプリケーションを停止しています。アプリケーションが強制的に停止されるまでに、リクエストを完了するための時間が5秒設定されています。
java -jar admin_client.jar deployer:oc4j:opmn://node2.company.com:6004/home oc4jadmin password -stop ascontrol -timeout 5
表6-25 -stopコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
任意。アプリケーションが正常に停止するまでの待機時間。タイムアウトに達すると、アプリケーションは強制的に停止されます。タイムアウトが指定されていない場合、デフォルトのタイムアウトは |
|
任意。gracefulオプションは、アプリケーションの停止に使用される方法を指定します。値
|
-restartApp
コマンドを使用して、ターゲットOC4Jインスタンスのアプリケーションおよびその子アプリケーションを停止してから起動します。アプリケーション内に更新されたファイルがある場合、それらのアプリケーションは起動時に自動的に再デプロイされます。デフォルトでは、アプリケーションが即時に停止されます。現在処理中のリクエストはすべて失われます。計画的に停止する場合は、停止前にリクエストの処理を完了するための時間をアプリケーションに設定することもできます。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -restartApp appName [-timeout timeInSeconds] [-graceful true|false]
-restartApp
コマンドでは、デプロイ時に指定したアプリケーション名が必要となります。次の例では、クラスタ内のnode2
のascontrol
アプリケーションを再起動しています。アプリケーションが強制的に停止されてから起動されるまでに、リクエストを完了するための時間が5秒設定されています。
java -jar admin_client.jar deployer:oc4j:opmn://node2.company.com:6004/home oc4jadmin password -restartApp ascontrol -timeout 5
表6-26 -restartAppコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
任意。アプリケーションが正常に停止するまでの待機時間。タイムアウトに達すると、アプリケーションは強制的に停止されます。タイムアウトが指定されていない場合、デフォルトのタイムアウトは |
|
任意。gracefulオプションは、アプリケーションの停止に使用される方法を指定します。値
|
-listApplications
コマンドを使用して、OC4Jインスタンス内、またはクラスタを構成するOC4Jインスタンス・グループ内に現在デプロイされているアプリケーションのステータスを表示します。デフォルトでは、アプリケーション名、中に含まれているモジュール、アプリケーション・タイプ、アプリケーションの状態および親アプリケーションのステータス情報が表示されます。さらに詳細な情報を表示するには、後述する-verbose
オプションを使用してください。
このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -listApplications [-verbose]
次の例では、OPMNリクエスト・ポート6003
でリスニングしている複数のOC4Jインスタンスで構成されるクラスタ上にデプロイされたアプリケーションの詳細情報が表示されます。
java -jar admin_client.jar deployer:cluster:opmn://localhost:6003/default_group oc4jadmin welcome1 -listApplications -verbose
admin_client.jar
ユーティリティを使用すると、スタンドアロンOC4Jサーバー、管理環境下にある特定のOC4Jインスタンス、またはOC4Jインスタンスのグループを停止できます。-shutdown
コマンドは、指定された1つ以上のOC4Jインスタンスを停止します。OPMN管理のインスタンスの場合には、停止されることがOPMNに通知されます。-restart
コマンドは、指定された1つ以上のインスタンスを再起動します。
次の各項では、これらのコマンドの構文および例を示します。
次に示すように、admin_client.jar
の-restart
コマンドラインを使用すると、OC4JインスタンスまたはOC4Jインスタンスのグループを再起動できます。
java -jar admin_client.jar uri adminId adminPassword -restart
たとえば、次のコマンドは、スタンドアロンOC4Jサーバーを再起動します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin password -restart
次のコマンドは、クラスタ・トポロジ内の各Oracle Application Serverのdefault_group
のメンバーであるすべてのOC4Jインスタンスを再起動します。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -restart
次に示すように、admin_client.jar
-shutdown
コマンドラインを使用すると、OC4JインスタンスまたはOC4Jインスタンスのグループを停止できます。
java -jar admin_client.jar uri adminId adminPassword -shutdown
たとえば、次のコマンドは、スタンドアロンOC4Jサーバーを停止します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin password -shutdown
このコマンドは、ホスト・マシンが接続されていないかのように、すべてのスレッドを即座に終了させてOC4Jサーバー全体を停止します。このコマンドを使用すると、クラスタ化されたアプリケーションの現在の状態はレプリケートされません。
次のコマンドは、OPMN管理のOracle Application Server環境の指定されたOC4Jインスタンスを停止します。
java -jar admin_client.jar deployer:oc4j:opmn://localhost/home oc4jadmin password -shutdown
次のコマンドは、クラスタ・トポロジ内の各Oracle Application Serverのdefault_group
のメンバーであるすべてのOC4Jインスタンスを停止します。
java -jar admin_client.jar deployer:cluster:opmn://node1.company.com/default_group oc4jadmin password -shutdown
これらのコマンドは指定された1つ以上のインスタンスを停止し、すべてのスレッドを即時に終了します。-shutdown
コマンドを使用すると、クラスタ化されたアプリケーションの現在の状態はレプリケートされません。OPMN管理の各OC4Jインスタンスでは、OPMNが再起動を試行しないように、サーバーを故意に停止中であることがadmin_client.jar
によりOPMNに通知されます。
admin_client.jar
ユーティリティを使用すると、次の各項で説明するように、OC4JインスタンスまたはOC4Jインスタンスのグループでデータソースを管理できます。
admin_client.jar
ユーティリティを使用すると、次の各項で説明するように、OC4JインスタンスまたはOC4Jインスタンスのグループでデータソース接続プールを追加、テスト、一覧表示および削除できます。
-addDataSourceConectionPool
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションのデータソース接続プールを追加します。
データソース接続プールを追加する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addDataSourceConnectionPool -applicationName applicationName -name name -factoryClass factoryClass -dbUser dbUser -dbPassword dbPassword -url url [-factoryProperties name1 value1 [name2 value2 [...]]]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addDataSourceConnectionPool -applicationName default -name ScottConnectionPool -factoryClass oracle.jdbc.pool.OracleDataSource -dbUser scott -dbPassword tiger -url jdbc:oracle:thin:@localhost:1521:xe
表6-28 -addDataSourceConnectionPoolコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。データソース接続プールを追加するアプリケーションの名前。 |
|
必須。接続プールの名前。 |
|
必須。コネクション・ファクトリ実装の完全修飾パス。 |
|
必須。接続を取得するために使用するデフォルト・ユーザーの名前。 |
|
必須。接続を取得するために使用するデフォルトのパスワード。 |
|
必須。接続を取得するために使用するコネクション・ファクトリのURL。 |
|
任意。コネクション・ファクトリの定義に設定する1つ以上のプロパティ名および値のペア。 |
-testDataSourceConnectionPool
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでデータソース接続プールへのアプリケーションの接続をテストします。
データソース接続プールへの接続をテストする構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -testDataSourceConnectionPool -name name -sqlStatement sqlStatement [-applicationName applicationName] [-dbUser dbUser] [-dbPassword dbPassword]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -testDataSourceConnectionPool -sqlStatement "select * from dual" -applicationName default -name ScottConnectionPool
-listDataSourceConnectionPools
コマンドを使用して、アプリケーションに構成されているデータソース接続プールのリストを表示します。リストには、各接続プールに構成されているプロパティが表示されます。
データソース接続プールを一覧表示する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -listDataSourceConnectionPools [-applicationName applicationName]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost:23791 oc4jadmin oc4j -listDataSourceConnectionPools -applicationName default
-removeDataSourceConnectionPool
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションからデータソース接続プールを削除します。データソース接続プールを削除する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -removeDataSourceConnectionPool -name name [-applicationName applicationName]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -removeDataSourceConnectionPool -name ScottConnectionPool -applicationName default
admin_client.jar
ユーティリティを使用すると、次の各項で説明するように、OC4JインスタンスまたはOC4Jインスタンスのグループでデータソースを追加、テスト、一覧表示および削除できます。
-addManagedDataSource
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションのマネージド・データソースを追加します。マネージド・データソースを追加する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addManagedDataSource -applicationName applicationName -name name -jndiLocation jndiLocation -connectionPoolName connectionPoolName [-dbUser dbUser] [-dbPassword dbPassword] [-loginTimeout loginTimeout] [-txLevel txLevel] [-dbSchema dbSchema] [-manageLocalTransactions true|false]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addManagedDataSource -applicationName default -name ScottDataSource -jndiLocation jdbc/ScottDataSource -connectionPoolName ScottConnectionPool
表6-32 -addManagedDataSourceコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。データソースを追加するアプリケーションの名前。 |
|
必須。データソースの名前。 |
|
必須。新規データソースをJNDIにバインドするために使用する場所。 |
|
必須。データソースが通信するコネクション・プールの名前。 |
|
任意。新規データソースのデフォルト・ユーザー。 |
|
任意。新規データソースのデフォルト・パスワード。 |
|
任意。新規データソースのログイン・タイムアウト。 |
|
任意。トランザクション・レベル( |
|
任意。使用中のEJB CMP実装がOrion CMPの場合に使用するデータベース・スキーマ。(TopLink CMPはデフォルトです。) |
|
任意。OC4Jでローカル・トランザクションを管理するかどうかを指定します。デフォルト値は |
-removeManagedDataSource
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションからマネージド・データソースを削除します。マネージド・データソースを削除する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -removeManagedDataSource -name name [-applicationName applicationName]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -removeManagedDataSource -name ScottDataSource -applicationName default
-addNativeDataSource
コマンドを使用すると、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションのネイティブ・データソースを追加できます。ネイティブ・データソースを追加する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addNativeDataSource -name name -dbUser dbUser -dbPassword dbPassword -jndiLocation jndiLocation -loginTimeout loginTimeout -dataSourceClass dataSourceClass -url url [-applicationName applicationName] [-properties name1 value1 [name2 value2 ][...]]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addNativeDataSource -name ScottDataSource -dbUser scott -dbPassword tiger -jndiLocation jdbc/ScottNativeDataSource -loginTimeout 5 -dataSourceClass com.acme.DataSourceImpl -url jdbc:oracle:thin:@localhost:1521:xe
表6-34 -addNativeDataSourceコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。新規データソースの名前。 |
|
必須。新規データソースのデフォルト・ユーザー。 |
|
必須。新規データソースのデフォルト・パスワード。 |
|
必須。新規データソースをJNDIにバインドするために使用する場所。 |
|
必須。新規データソースのログイン・タイムアウト。 |
|
必須。新規データソースの完全修飾クラス。 |
|
必須。データベースに接続するために新規データソースによって使用されるURL。 |
|
任意。データソースを追加するアプリケーションの名前。 |
|
任意。新規データソースの1つ以上のプロパティ。 |
-removeNativeDataSource
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションからネイティブ・データソースを削除します。ネイティブ・データソースを削除する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -removeNativeDataSource -name name [-applicationName applicationName]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -removeNativeDataSource -name ScottDataSource
-testDatabaseConnection
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションのデータベースへの接続をテストします。
データベース接続をテストする構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -testDatabaseConnection -sqlStatement sqlStatement -factoryClass factoryClass -dbUser dbUser -dbPassword dbPassword -url url [-applicationName applicationName]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -testDatabaseConnection -sqlStatement "select * from dual" -factoryClass oracle.jdbc.pool.OracleDataSource -dbUser scott -dbPassword tiger -url jdbc:oracle:thin:@localhost:1521:xe -applicationName default
表6-36 -testDatabaseConnectionコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。接続をテストするために使用するSQL文。 |
|
必須。テストするJDBCファクトリ( |
|
必須。接続をテストするために使用するユーザー名。 |
|
必須。接続をテストするために使用するパスワード。 |
|
必須。JDBCファクトリに設定するURL。 |
|
任意。アプリケーションの名前。 |
-testDataSource
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各OC4Jインスタンスでアプリケーションのデータソースへの接続をテストします。
データソースをテストする構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -testDataSource -name name -sqlStatement sqlStatement [-applicationName applicationName] [-dbUser dbUser] [-dbPassword dbPassword]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -testDataSource -name ScottDataSource -sqlStatement "select * from dual" -applicationName default -dbUser scott -dbPassword tiger
-listDataSources
コマンドを使用して、アプリケーションに構成されているデータソースのリストを表示します。リストには、各データソースに構成されているプロパティが表示されます。
データソースを一覧表示する構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -listDataSources [-applicationName applicationName]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost:23791 oc4jadmin oc4j -listDataSources -applicationName default
admin_client.jar
ユーティリティを使用すると、次の各項で説明するように、OC4JインスタンスまたはOC4JインスタンスのグループでJMSリソースを管理できます。
admin_client.jar
ユーティリティを使用すると、次の各項で説明するように、OC4J JMSコネクション・ファクトリを管理できます。
-addJMSConnectionFactory
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のグループの各インスタンスにJMSコネクション・ファクトリを追加します。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addJMSConnectionFactory
-domain domain -jndiLocation jndiLocation [-host host
] [-port port]
[-username username] [-password password] [-clientID clientID] [-isXA true|false]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addJMSConnectionFactory -domain Queue -jndiLocation jms/ExampleQueueCF
表6-40 -addJMSConnectionFactoryコマンドのパラメータ
パラメータ | 説明 |
---|---|
|
必須。コネクション・ファクトリのJMSドメイン( |
|
必須。コネクション・ファクトリをバインドするJNDIロケーション。 |
|
任意。コネクション・ファクトリに関連付けるホスト名(デフォルトで、包含するOC4J JMSサーバー・ホストに設定されます)。 |
|
任意。コネクション・ファクトリに関連付けるポート番号(デフォルトで、包含するOC4J JMSサーバー・ポートに設定されます)。 |
|
任意。コネクション・ファクトリに関連付けるユーザー名(デフォルトで |
|
任意。コネクション・ファクトリに関連付けるパスワード(デフォルトでNullに設定されます)。 |
|
任意。コネクション・ファクトリに関連付けるJMSクライアントID(デフォルトでNullに設定されます)。 |
|
任意。XAコネクション・ファクトリであるかどうかを指定します(デフォルトで |
-removeJMSConnectionFactory
コマンドを使用して、1つ以上のOC4JインスタンスからJMSコネクション・ファクトリを削除します。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -removeJMSConnectionFactory -jndiLocation jndiLocation
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -removeJMSConnectionFactory -jndiLocation jms/ExampleQueueCF
-getJMSConnectionFactories
コマンドを使用して、OC4Jインスタンスまたはクラスタ内のOC4Jインスタンスのグループで各JMSコネクション・ファクトリの属性を戻します。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -getJMSConnectionFactories
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -getJMSConnectionFactories
admin_client.jar
ユーティリティを使用すると、次の各項で説明するように、OC4J JMS宛先を管理できます。
-addDestination
コマンドを使用して、JMS宛先を追加します。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -addDestination -domain domain -namename
-jndiLocation jndiLocation [-persistenceFilepersistenceFile
] [-description description]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -addDestination -domain Queue -name ExampleQueue -jndiLocation jms/ExampleQueue
-removeDestination
コマンドを使用して、OC4Jインスタンスまたはグループの各OC4JインスタンスからJMS宛先を削除します。このコマンドの構文は次のとおりです。
java -jar admin_client.jar uri adminId adminPassword -removeDestination
-name name
[-force true|false] [-removePFile true|false]
次に例を示します。
java -jar admin_client.jar deployer:oc4j:localhost oc4jadmin welcome1 -removeDestination -name ExampleQueue -removePFile true
「リモート管理クライアントのダウンロードおよび抽出」で説明されているように、リモート管理クライアント・ユーティリティからファイルをインストールすると、リモート・クライアントを使用してOC4Jを管理できます。その後、コマンドライン・ツールまたはJMXリモートAPIを介してadmin_client.jar
を使用できます。
「リモート管理クライアントのダウンロードおよび抽出」で説明されているように、OC4Jアプリケーション・サーバー・ターゲットに接続すると、リモート・クライアントからadmin_client.jar
コマンドを発行できます。OC4Jインスタンス内で使用するのと同じ構文を使用します。
JConsoleは、JDK 5.0に含まれるJMX GUIコンソールです。JConsoleは任意のJVMに接続し、稼働中のMBeanServerにフックできます。これにより、JVMのスレッドやメモリー使用量など、システムの様々な詳細が示された一連のページが表示されます。JConsoleはローカルJVMに接続することも、JMXリモートAPIを使用してリモートJVMに接続することもできます。
管理クライアント・ユーティリティ・ディストリビューションには、JConsoleによるリモートのOC4JまたはOracle Application Serverインスタンスへの接続に必要なライブラリが含まれています。ターゲット・インスタンスに接続するには、(Windows環境でネイティブの実行可能ファイルとして提供されている)JConsoleユーティリティが、管理クライアント・ユーティリティ・ディストリビューションの関連する詳細とともに構成されている必要があります。
Oracle Application Serverインスタンスに接続する手順:
CLASSPATH環境変数に/j2ee/
instance
/admin_client.jar
を追加します。
set CLASSPATH=j2ee/home/admin_client.jar
CLASSPATH環境変数にJConsoleライブラリを追加します。
set CLASSPATH=%CLASSPATH%;%JAVA_HOME%\lib\jconsole.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%\lib\tools.jar
OC4J ORMIプロトコルを使用できるようJMXコネクタを構成します。
set PROPS=jmx.remote.protocol.provider.pkgs=oracle.oc4j.admin.jmx.remote
JConsoleを実行します。
%JAVA_HOME%\bin\jconsole -J-Djava.class.path=%CLASSPATH% -J-D%PROPS%
これによりJConsoleが起動されます。
「Connect to Agent」画面の「Advanced」タブで、OC4JまたはOracle Application Serverターゲットの接続文字列、およびターゲットの管理ユーザー名とパスワードを入力します。
OC4Jターゲットでは、JMX URLのパターンは、Oracle Application Serverターゲットのパターンとは異なります。表6-44に、これらのURLパターンの例を示します。
表6-44 OC4JおよびOracle Application ServerターゲットのJMX URL
ターゲット | JMX URL |
---|---|
スタンドアロンOC4Jサーバー |
|
Oracle Application ServerのOC4Jインスタンス |
|
Oracle Application Serverクラスタ |
service:jmx:rmis:///opmn://stadp69:6003/cluster/as101/admin |
JConsoleユーティリティにより、ターゲット・インスタンスのOC4J MBeansが表示されます。これらのMBeansは、OC4Jインスタンスの構成の表示および管理に使用できます。
Windows環境では、JConsoleによって使用される環境は、次に示す特別なシステム・プロパティ・フォームを使用して変更できます。
-J-Dname=value
次に、サンプル・コマンドのスクリプトを示します。
setlocal set URL=service:jmx:rmi:///opmn://test-cycle.oracle.com:6010/testunit set JAVA_HOME=C:\java\jdk150_07 set JCONSOLE_CPset JCONSOLE_CP=%JCONSOLE_CP%;%JAVA_HOME%\lib\jconsole.jar set JCONSOLE_CP=%JCONSOLE_CP%;%JAVA_HOME%\lib\tools.jar set ORACLE_HOME=D:\oc4j_admin_client set ORACLE_CP= set ORACLE_CP=%ORACLE_CP%;%ORACLE_HOME%\j2ee\home\admin_client.jar; set CLASSPATH=%JCONSOLE_CP%;%ORACLE_CP% set PROPS= set PROPS=%PROPS% -J-Djmx.remote.protocol.provider.pkgs=oracle.oc4j.admin.jmx.remote set PROPS=%PROPS% -J-Djava.class.path=%CLASSPATH% jconsole %PROPS% %URL% endlocal
管理クライアント・ユーティリティ・ディストリビューションは、JMXクライアント・アプリケーションがリモートのOC4Jインスタンスに接続するための完全なクライアント環境を提供します。JMXプログラム・クライアントを使用し、MBeanServerへの接続を確立できるJMXリモートAPI(JSR160)を介してリモートからOC4Jを管理できます。JDK 5.0を使用して実行するために必要なJARファイルは、管理クライアント・ユーティリティ・ディストリビューションによって提供されるoc4jclient.jar
およびadmin_client.jar
のみです。
次の例では、JMX APIとともにこれらのJARファイルが使用されています。
// A URL is of the form "service:jmx:rmi://127.0.0.1:23791" JMXServiceURL serviceURL = new JMXServiceURL(_url); Hashtable credentials = new Hashtable(); credentials.put("login", _username); credentials.put("password", _password); // Properties required to use the OC4J ORMI protocol Hashtable env = new Hashtable(); env.put(JMXConnectorFactory.PROTOCOL_PROVIDER_PACKAGES, "oracle.oc4j.admin.jmx.remote"); env.put(JMXConnector.CREDENTIALS, credentials); JMXConnector jmxCon = JMXConnectorFactory.newJMXConnector(serviceURL, env); jmxCon.connect(); MBeanServerConnection mbeanServer = jmxCon.getMBeanServerConnection();
JDK 5.0では、このコードのコンパイルにはOracleライブラリは不要で、JDKに用意されているライブラリのみが使用されます。
clear @echo off @setlocal set J2EE_HOME=c:\java\oc4j-1013-prod\j2ee\home set JAVA_HOME=c:\java\jdk50 set CLASSPATH=. rem rem Uncomment below if using JDK14 rem set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\lib\jmxri.jar rem set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\lib\jmx_remote_api.jar rem set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\lib\javax77.jar rem %JAVA_HOME%\bin\javac -classpath %CLASSPATH% -d . *.java @endlocal
oc4j_admin_client_101350.zip
ディストリビューションを使用してコードを実行するには、次のようにします。
実行可能なJARファイルを作成します。
JARファイルを管理クライアント・ユーティリティ・ディストリビューションのj2ee/home
ディレクトリに移動します。
リモートのOC4Jインスタンスに接続します。
コードは、$ORACLE_HOME/j2ee/home/oc4jclient.jar
および$ORACLE_HOME/j2ee/home/admin_client.jar
を使用してJDK 5.0で実行されます。
@echo off @setlocal clear set J2EE_HOME=c:\java\oc4j-1013-prod\j2ee\home set JAVA_HOME=c:\java\jdk50 rem Runtime classpath set CLASSPATH=. set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\oc4jclient.jar; set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\admin_client.jar; rem rem Uncomment if using JDK14 rem set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\lib\jmxri.jar rem set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\lib\jmx_remote_api.jar rem set CLASSPATH=%CLASSPATH%;%J2EE_HOME%\lib\javax77.jar @endlocal
この例のメイン・メソッドの接続URLは、ローカルのOC4Jインスタンスに接続するよう設定されています。ORMIポートを介してOracle Application Serverに接続する必要がある場合には、次の形式のサービスURLを使用します。
service:jmx:rmi|ormi:///opmn://stadp57.us.oracle.com:6003/home
サービスURLは、OPMNデーモンからORMIポートを取得します。ORMIポートは実行時に割り当てられます。OPMN接続文字列パスを使用すると、指定されたOC4Jインスタンスに接続できます。
JMXクライアントを使用してリモートからOC4Jインスタンスを管理する方法は、『Oracle Containers for J2EE開発者ガイド』のJMXリモートAPI(JSR-160)を使用するリモート管理に関する項を参照してください。