ヘッダーをスキップ
Oracle Containers for J2EEデプロイメント・ガイド
10g(10.1.3.5.0)
B56032-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

12 admin.jarによるスタンドアロンOC4Jへのデプロイ


注意:

デプロイおよび管理操作に推奨されるコマンドライン・ツールは、admin_client.jarユーティリティです。このユーティリティは、admin.jarのかわりに使用してください。

この章では、OC4Jで利用できるadmin.jarコマンドライン・ユーティリティの使用方法について説明します。これは、スタンドアロンOC4JインスタンスでのJ2EEアプリケーションのデプロイまたはアンデプロイに使用できます。次の項目について説明します。

この章では、admin.jarのデプロイとアンデプロイのオプションのみを説明することに注意してください。admin.jarユーティリティのすべての使用方法の詳細は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。


注意:

  • admin.jarは、OPMN管理のOC4Jインスタンスへのデプロイでは使用できません。

  • admin.jarでサポートされるのはEARファイルのデプロイのみです。スタンドアロン・モジュール(WARファイルにパッケージされたWebモジュールなど)をデプロイすることはできません。

  • admin.jarではデプロイ・プランは使用されません。このユーティリティを使用してデプロイするアーカイブは、必須のOC4J固有のデプロイメント・ディスクリプタ・ファイル(orion-application.xmlまたはorion-web.xmlなど)を含む必要があります。


admin.jarの構文について

admin.jarユーティリティでは次の構文が使用されます。変数は表12-1で説明します。

java -jar admin.jar ormi://oc4jHost:oc4jOrmiPort adminId
adminPassword options

たとえば、次のコマンドを使用するとadmin.jarのヘルプがコンソールに表示されます。oc4jOrmiPortに指定する値は、デフォルトの23791です。adminIdに指定するユーザー名は、デフォルトの管理者アカウントのユーザー名oc4jadminです。

java -jar admin.jar ormi://localhost:23791 oc4jadmin password -help

表12-1 ホストとログイン情報の設定

変数 説明

oc4jHost:oc4jOrmiPort

admin.jarを起動するOC4Jサーバーのホスト名とポート。

admin.jarツールは、OC4J Remote Method Invocation(ORMI)プロトコルを使用してOC4Jサーバーとの通信を行います。このため、これらの変数で指定されるホスト名とポートは、リクエストの送り先であるOC4Jサーバーのrmi.xmlファイルに定義されます。

ORMIプロトコルのデフォルト・ポートは23791です。変更しない場合、この値は省略できます。デフォルトを使用しない場合は、次のようにrmi.xmlファイルの<rmi-server>要素にホスト名とポート番号の両方を構成します。

<rmi-server port="oc4jOrmiPort" host="oc4jHost" />

adminId adminPassword

OC4J管理者のユーザー名とパスワード。デフォルトの管理者アカウントのユーザー名はoc4jadminです。


アプリケーションのデプロイまたは再デプロイ

-deployコマンドを使用して、EARファイルにパッケージされたJ2EEアプリケーションをスタンドアロンOC4Jインスタンスにデプロイまたは再デプロイします。admin.jarを使用するにはOC4Jが実行済である必要がありますが、デプロイ前にdata-sources.xmlファイルを変換した場合は例外です。

  1. コマンド・コンソールを開いて、J2EE_HOMEディレクトリに移動します。

  2. アーカイブをOC4Jにデプロイします。構文は次のとおりです。

    java -jar admin.jar ormi://oc4jHost:oc4jOrmiPort adminId
        adminPassword -deploy -file path/filename
        -deploymentName appName [-targetPath path] [-parent appName]
        [-deploymentDirectory path] [-iiopClientJar path/filename]
    

    たとえば、次のコマンドではutilityアプリケーションがOC4Jにデプロイされます。

    java -jar admin.jar ormi://localhost:23791 oc4jadmin password -deploy -file 
    utility.ear -deploymentName utility
    

    次の表に、-deployのパラメータの詳細を示します。

    表12-2 -deployコマンドのパラメータ

    パラメータ 説明

    -file

    必須。デプロイするEARファイルのパスとファイル名。

    -deploymentName

    必須。ユーザー定義のアプリケーション・デプロイ名。OC4J内でのアプリケーションの識別に使用されます。

    -targetPath

    オプション。EARのデプロイ先のディレクトリ。指定しない場合、EARはデフォルトでORACLE_HOME/j2ee/home/applicationsディレクトリにデプロイされます。

    デプロイ済EARファイルもこのディレクトリにコピーされます。連続してデプロイを行うと、毎回このEARファイルが上書きされます。

    -parent

    オプション。このアプリケーションの親アプリケーション。デフォルトは、グローバル・アプリケーションすなわちdefaultアプリケーションです。

    -deploymentDirectory

    オプション。OC4J固有のデプロイメント・ディスクリプタと生成されるファイル(コンパイル済JSPクラスやEJBラッパー・クラスなど)を含むディレクトリ。

    デフォルト・ディレクトリはORACLE_HOME/j2ee/home/application-deploymentsです。

    -iiopClientJar

    オプション。EARに含まれる各EJB JARにパッケージされた、ホーム、リモートおよびローカルのインタフェースに対してIIOPスタブを生成する場合に指定します。

    生成されたスタブを出力するJARのパスとファイル名を指定することもできます(オプション)。指定しない場合、スタブのコピーは、ORACLE_HOME/j2ee/home/application-deploymentsの新しいサブディレクトリの_iiopClient.jarという名前のアーカイブに出力されます。このサブディレクトリの名前は、デプロイされるEJB JARと同じです。

    この機能を使用するには、GenerateIIOPシステム・プロパティをOC4Jの起動時に有効にする必要があります。次に例を示します。

    java -DGenerateIIOP=true -jar oc4j.jar
    

  3. 次に、アプリケーションのアクセスに使用するWebサイトにアプリケーションをバインドします。構文は次のとおりです。

    java -jar admin.jar ormi://oc4jHost:oc4jOrmiPort adminId
       adminPassword -bindWebApp appName webAppName
       webSiteName contextRoot
    

    次の例では、utilityアプリケーションとutility-web WebモジュールがデフォルトのOC4J Webサイトにバインドされます。

    java -jar admin.jar ormi://localhost:23791 admin password -bindwebapp utility 
    utility-web default-web-site /utility
    

表12-3 -bindWebAppコマンドのパラメータ

パラメータ 説明

appName

アプリケーションのユーザー定義名。-deployオプションの-deploymentNameで使用されるものと同じ名前。

webAppName

Webモジュールの名前。EARファイルに含まれるWARファイルの名前から.WAR拡張子を除いて指定してください。

webSiteName

name_web-site.xmlファイルのnameの部分。このファイルは、このWebアプリケーションをバインドするWebサイトを指定します。

contextRoot

Webモジュールのコンテキスト・ルート。これは、Webブラウザでアプリケーションにアクセスするときに、http://localhost:8888/utilityのようにURLの最後に付加して使用します。


アプリケーションのアンデプロイ

次のコマンドを使用して、アプリケーションをOC4Jランタイムから削除し、アプリケーションのWebモジュールがバインドされているWebサイトからバインドを削除します。

  1. コマンド・コンソールを開いて、ORACLE_HOMEディレクトリに移動します。

  2. アプリケーションをアンデプロイします。構文は次のとおりです。

    java -jar admin.jar ormi://oc4jHost:oc4jOrmiPort adminId adminpassword
       -undeploy appname
    
    • appNameはアプリケーション名です。これは、-deployオプションの-deploymentNameに指定された値と一致する必要があります。


    注意:

    インストール済ディレクトリからのファイルの削除を防ぐために使用されていた、オプションの-keepFilesパラメータは非推奨になりました。アンデプロイではすべてのファイルが削除されるようになりました。

    たとえば、次の例ではutilityアプリケーションがアンデプロイされます。

    java -jar admin.jar ormi://localhost:23791 oc4jadmin password -undeploy utility
    

デプロイ済アプリケーション内のEJBモジュールの更新

OC4Jで利用できるadmin.jarコマンドライン・ユーティリティには、-updateEJBModuleオプションが含まれます。これを使用すると、更新されたEJB JARをOC4Jインスタンス内で実行するアプリケーションに再デプロイすることができます。EJB JAR内の変更されたBeanのみがデプロイされます。

CMPまたはBMPエンティティBeanについては、増分再デプロイがアプリケーション全体の再デプロイよりも効率がよい場合がありますが、セッションBean、メッセージドリブンBeanまたはEJB 3.0 JPAエンティティには当てはまりません。この機能を使用する場合の詳細は、「更新されたEJBモジュールの増分再デプロイ」を参照してください。

このオプションは、アプリケーション開発者がJARファイルを開発環境から直接再デプロイするために使用することを目的としています。admin.jarの使用方法の詳細は、『Oracle Containers for J2EE構成および管理ガイド』を参照してください。

-updateEJBModuleの構文は次のとおりです。

java -jar admin.jar ormi://oc4j_host:oc4j_ormi_port admin_id
   admin_password -application appName -updateEJBModule ejbJarName
   [-file path/ejbJarName]

使用上の注意:

たとえば、次のコマンドを使用してpetstoreアプリケーションのcustomerEjb.jarモジュールを更新します。開発者のマシンに次のディレクトリ構造があることを前提としています。

/work
  /src    - application source code
  /build  - compiled class files
  /dist   - assembled EAR and JAR files

更新されたEJB JARが/distディレクトリのルート・レベルにあり、application.xmlに定義された相対パスがcustomerEjb.jarである場合は、次のコマンドを/distディレクトリから発行することができます。

java -jar $J2EE_HOME/admin.jar ormi://myoc4jserver:23791 oc4jadmin password
-application petstore -updateEJBModule customerEjb.jar

ただし、更新されたファイルが/buildディレクトリにある場合は、オプションの-fileパラメータを使用してその場所を指定できます。

java -jar $J2EE_HOME/admin.jar ormi://myoc4jserver:23791 oc4jadmin password
-application petstore -updateEJBModule customerEjb.jar
-file build/customerEjb.jar

注意:

  • これらの例では、ターゲットOC4Jホスト内のORACLE_HOME/j2ee/homeディレクトリを指すJ2EE_HOME環境変数が、開発者のマシンに存在するものと想定されています。

  • EJBモジュール名が指定されていない場合または無効な場合、つまり更新されたEJB JARを検出できない場合には、エラーが発生します。


スタンドアロン・コネクタのデプロイまたは再デプロイ

-deployconnectorコマンドを使用して、RARファイルにパッケージされたJava Connector Architecture準拠のリソース・アダプタをデプロイまたは再デプロイします。スタンドアロン・リソース・アダプタの再デプロイでは、defaultアプリケーションの再起動が不要です。

RARファイルにパッケージされたリソース・アダプタの再デプロイでは、既存のすべてのアプリケーション・コンポーネントが、既存バージョンのリソース・アダプタからコネクション・ファクトリを引き続き取得します。ただし、新しいコンポーネントは、新たにデプロイされたリソース・アダプタからコネクション・ファクトリを取得します。

既存のJCA接続は、アプリケーションによって閉じられるまで開いています。新しい接続は、元のリソース・アダプタ・インスタンスから作成されます。

構文は次のとおりです。

java -jar admin.jar ormi://oc4jHost:oc4jOrmiPort adminId
    adminPassword -deployconnector -file path -name connectorName
   [-nativeLibPath path] [-grantAllPermissions]

表12-4 -deployconnectorコマンドのパラメータ

パラメータ 説明

-file

必須。デプロイするRARファイルのパスとファイル名。

-deploymentName

必須。ユーザー定義のコネクタ名。OC4J内でのコネクタの識別に使用されます。

-nativeLibPath

オプション。RARファイル内のネイティブ・ライブラリ(DLLなど)を含むディレクトリのパス。

-grantAllPermissions

オプション。必要であれば指定して、リソース・アダプタでリクエストされるすべてのランタイム権限を付与します。


スタンドアロン・コネクタのアンデプロイ

-undeployconnectorを使用して、スタンドアロン・コネクタをOC4Jランタイムから削除します。スタンドアロン・リソース・アダプタのアンデプロイでは、defaultアプリケーションの再起動が不要です。

構文は次のとおりです。コネクタ名を指定する必要があることに注意してください。

java -jar admin.jar ormi://oc4jHost:oc4jOrmiPort adminId
   adminPassword -undeployconnector -name connectorName