5 ホスティング・アプリケーションを生成するためのAntの使用

この章では、Oracle Enterprise Schedulerに含まれているbuild.xmlファイルのAntターゲットを使用して、Javaジョブで使用するホスティング・アプリケーションを作成する方法について説明します。

これらのターゲットを使用して、Oracle JDeveloperワークスペースでアプリケーション・アーティファクトを作成したり、Javaジョブ実装用のテンプレートを作成したり、アプリケーションとJavaジョブの両方を(共有ライブラリとして)パッケージ化およびデプロイできます。

ここで説明するAntターゲットでは、ユーザーがジョブを操作できるクライアント・ユーザー・インタフェースを作成しません。クライアント・タスクを実行する場合は、Fusion Middleware Controlを使用するか、またはOracle JDeveloperでクライアント・ユーザー・インタフェースを開発できます。また、一般的にカスタム・ホスティング・アプリケーションには、アプリケーションのデプロイ時にパッケージ化されメタデータ・リポジトリにデプロイされるメタデータがシードされています。カスタム・ホスティング・アプリケーションを生成するAntベースのスクリプトは、メタデータ・アーティファクトを作成する手段を提供しません。このため、ホスティング・アプリケーションを生成した後、このアプリケーションをサーバーにデプロイする前にOracle JDeveloperでワークスペース(.jws)を開き、必要なメタデータを追加する必要があります。

アプリケーションおよび共有ライブラリを作成およびデプロイすると、JDeveloperまたはEnterprise Managerを使用して、デプロイされた出力にメタデータを関連付けることができます。

ノート:

サード・パーティ・ライセンス制限のため、12c Enterprise Scheduling Serviceコンポーネントに次の.jarファイルは付属していません: jdom.jarsaxon9.jarant-contrib.jarおよびant-groovy.jar。これらの.jarファイルがMW_HOME/oracle_common/ess/extensibility_scripts/ant/libにコピーされていることを確認してください。

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

5.1 Antを使用したホスティング・アプリケーションの生成の概要

Oracle Enterprise Schedulerには、ホスティング・アプリケーションの実行に必要な基本アーティファクトの生成に使用できるAntビルド・ファイル、およびデプロイしてアプリケーションで実行できるJavaジョブが含まれています。

組込みAntビルド・ファイルを使用して、ホスティング・アプリケーションを生成します。実行時に、Javaジョブ用のアーティファクトの生成や、生成したコンポーネントのビルドおよびデプロイに使用できるターゲットが含まれた、別のAntビルド・ファイルも生成します。

アプリケーションおよび共有ライブラリを作成およびデプロイすると、JDeveloperまたはEnterprise Managerを使用して、デプロイされた出力にメタデータを関連付けることができます。

また、生成されたbuild.propertiesファイルを使用すると、ターゲットが実行時に使用する変数の値を設定してAntが行う作業をカスタマイズすることもできます。

この章で説明しているステップには、Antで実行できる次のことが含まれています。

  1. ジョブを実行できるホスティング・アプリケーションを作成します。組込みbuild.xmlファイル内のcreate-user-homeを使用します。

  2. IDEでのアプリケーション・アーティファクトの編集に使用できるJDeveloperプロジェクト・ワークスペースを作成します。これは、ホスティング・アプリケーションの作成時に行われます。

  3. アプリケーションの一部をビルドおよびデプロイするためのターゲットが含まれたAntビルド・ファイルを作成します。

  4. ビジネス・ロジックを追加できるJavaジョブ・テンプレートを作成します。生成されたbuild.xmlファイル内のcreate-new-job-defターゲットを使用します。

  5. 実装されたJavaジョブを共有ライブラリとしてパッケージ化します。生成されたbuild.xmlファイル内のpackage_essjob_libraryターゲットを使用します。

  6. 共有ライブラリをホスティング・アプリケーションにデプロイします。生成されたbuild.xmlファイル内のdeploy_essjob_libraryターゲットを使用します。

  7. ホスティング・アプリケーションをパッケージ化します。生成されたbuild.xmlファイル内のpackage_hosting_appターゲットを使用します。

  8. ホスティング・アプリケーションをデプロイします。生成されたbuild.xmlファイル内のdeploy_hosting_appターゲットを使用します。

5.1.1 Antビルド・ファイルを使用するための前提条件

提供されたビルド・ファイルまたは生成されたビルド・ファイルを使用する前に、次の前提条件を満たしていることを確認してください。

  • Antがインストール済であり、ANT_HOME変数が適切に設定されており、PATHがantのbinディレクトリを指すように設定してある必要があります。

  • Oracle JDeveloperをインストールおよび設定する必要があります。PATH変数には、jdevコマンドをコマンド・プロンプトから実行できるようにOracle JDeveloper binディレクトリが含まれている必要があります。

5.2 ホスティング・アプリケーションの作成およびデプロイ用のAntターゲット

Oracle Enterprise Schedulerには、ジョブを実行できるホスティング・アプリケーションをデプロイするのに役立つ、Antビルド・ファイルが含まれています。

ただし、実際にはこのジョブを完了するには、2つのビルド・ファイルを使用します。その1つはOracle Enterprise Schedulerに含まれており、もう1つは組込みビルド・ファイル内のターゲットにより生成されます。次の表では、これら2つのファイルにデフォルトで含まれているターゲットをリストして説明します。

デフォルトでは、組込みbuild.xmlファイルはOracle Enterprise Schedulerのextensibility_scriptsディレクトリにあります。たとえば、Oracle JDeveloperインストールでは、MW_HOME/oracle_common/ess/extensibility_scripts/build.xmlにあり、Oracle Enterprise Schedulerなどの製品のインストールでは、ORACLE_HOME/extensibility_scriptsディレクトリにあります。

表5-1 組込みビルド・ファイル内のAntターゲット

Antターゲット 説明

create-user-home

ユーザー・ホームを作成するためのデフォルト・ターゲットです。

help-create-user-home

ユーザー・ホームの作成に関するヘルプです。

組込みbuild.xmlファイルのcreate-user-homeターゲットを実行した場合、ターゲットのアクションの1つとして、別のbuild.xmlファイルが作成されます。そのファイルには、アプリケーション用のアーティファクトを作成、ビルドおよびデプロイするために使用できる次のターゲットが含まれています。

表5-2 生成されたビルド・ファイル内のAntターゲット

Antターゲット 説明

build_ears

ジョブ共有ライブラリおよびホスティング・アプリケーションをパッケージ化します。

create-new-job-def

Javaジョブを共有ライブラリとして作成します。

deploy

ジョブ・ライブラリおよびホスティング・アプリケーションをパッケージ化およびデプロイします。

deploy_essjob_library

Javaジョブ共有ライブラリをデプロイします。

deploy_hosting_app

ホスティング・アプリケーションをデプロイします。

deploy_job_logic

ジョブ共有ライブラリをパッケージ化およびデプロイします。

package_essjob_library

Javaジョブを共有ライブラリとしてパッケージ化します。

package_hosting_app

ホスティング・アプリケーションをパッケージ化します。

5.3 Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成

Oracle Enterprise Schedulerに含まれているbuild.xmlファイル内のcreate-user-home Antターゲットを実行して、ホスティング・アプリケーションを作成できます。

スクリプトが正常に完了すると、パッケージ化およびデプロイ可能なホスティング・アプリケーション用アーティファクトが作成されます。これらのアーティファクトは、指定したターゲット・ディレクトリのJDeveloper互換ワークスペース内に生成されます。作成されたワークスペースにはbuild.xmlが含まれており、これを使用して、ホスティング・アプリケーションおよび生成されたJavaジョブを共有ライブラリとしてビルド、パッケージ化およびデプロイできます。

ターゲットが実行されるとき、ターゲットの作業のガイドとなる詳細を入力することを要求されます。これらの詳細には、ターゲットの作業について意図されている環境(特定のアプリケーションで実行するなど)、新しいアプリケーションの名前、ターゲット・ディレクトリなどが含まれます。

開始する前に、Antターゲットによって要求される次の情報を用意しておきます。

表5-3 Antターゲットで必要な情報

入力プロンプト 説明

使用するテンプレート

可能な値はFusionおよびStandaloneです。Oracle Fusion Applicationsで使用するために開発している場合は、ここでFusionと入力します。

Oracle Fusion Applicationsで使用するための開発でない場合は、Standaloneと入力します。

Oracle Fusion Applicationsコンテキストとスタンドアロン・コンテキストとの間には重要な相違があります。たとえば、Oracle Fusion Applicationsコンテキストでは、ターゲットはわずかに異なるホスティング・アプリケーションおよびクライアント・アプリケーションを生成します。

ミドルウェア・ホーム・ディレクトリ・パス

Oracle Enterprise Schedulerが(多くの場合、埋め込まれている別の製品により)インストールされたときに作成されたミドルウェア・ホーム・ディレクトリです。サポート・ライブラリの場所は、このディレクトリに対して相対的な場所にあります。

この機能は、ojdeployユーティリティを使用してアーティファクトを作成およびパッケージ化し、サーバーにデプロイします。binディレクトリにojdeployを含むOracle JDeveloperディレクトリがミドルウェア・ホーム・パスに含まれない場合、Oracle JDeveloperがインストールされるディレクトリを指定します。

ホスティング・アプリケーション名

新しいホスティング・アプリケーションに付ける名前です。

ホスティング・アプリケーションJPSストライプID

ストライプは、アプリケーションで使用するポリシー・ストア内の値のサブセットを定義するセキュリティ構成です。実行時に、アプリケーションに適用可能なポリシーのセットを決定します。多くの場合、アプリケーション名が使用されます。

ジョブ・ビジネス・ロジックの共有ライブラリ名

生成されたJavaジョブ・ソース・コードを配置する共有ライブラリの名前です。

アプリケーションが作成される空のディレクトリ

生成されたファイルの移動先となるディレクトリです。これは、後で使用するアーティファクト(build.xmlファイルなど)が作成されるJDeveloperワークスペースの場所となります。

Antを使用したホスティング・アプリケーションの作成手順

  1. 開始するには、コンソール・ウィンドウを開き、組込みbuild.xmlがある場所にディレクトリを変更します。デフォルトでは、これはOracle Enterprise Schedulerのextensibility_scriptsディレクトリです。たとえば、MW_HOME/oracle_common/ess/extensibility_scripts/build.xmlです。

    次のようなコマンドでターゲットを実行します。このターゲット名は、ビルド・ファイルのデフォルト・ターゲットであるため、省略できます。

    ant
    

    ターゲット名を使用する場合は、次のようなコマンドになります。

    ant create-user-home
    

    Antコンソール出力の次の例では、プロンプトが[input]という語で始まることに注意してください。各プロンプトで、使用する値を入力し、[Enter]を押します。

    必要な情報を入力すると、ターゲットは要求したディレクトリおよびファイルを作成し、必要なファイルを新しいワークスペースにコピーし、新しいホスティング・アプリケーション用の一部の構成を設定します。

    [extensibility_scripts]$ ant
     
    Buildfile: build.xml
     
    -init:
     
    create-user-home:
    [input] Enter which template should be used (source_template)
    (default=Fusion)
        [input]      ([Fusion], Standalone)
    Standalone
        [input] Enter Middleware Home Directory path (fmw_home_dir) (default=) []
    /scratch/fmwtools/mw_home
        [input] Enter hosting application name (hosting_application_name)
    (default=MyAppEss) [MyAppEss]
    NewDemoApp
        [input] Enter hosting application JPS stripe id
    (hosting_application_stripe_id) (default=MyAppEss) [MyAppEss]
    NewDemoApp
        [input] Do you want to add shared library for the (java) job business
    logic? (use_jobdef_library) (default=yes)
        [input]      ([yes], no)
    no
    [input] Enter an empty directory where the applications will be created
    (user_home)
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [echo]
         [echo]
        [mkdir] Created dir:
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
    [propertyfile] Creating new property file:
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/template.properties
         [copy] Copying 9 files to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [copy] Copied 15 empty directories to 4 empty directories under
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [copy] Copying 1 file to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/ant/config
         [copy] Copying 1 file to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [copy] Copying 15 files to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [move] Moving 1 file to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/Template_Hosting
         [echo]
         [echo] ========================================
         [echo]
         [echo] A new workspace has been created at:
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [echo] This workspace can be opened and modified using JDeveloper
         [echo] To deploy the applications, run the following command:
         [echo]     ant -f
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/ant/build-ess.xml
    deploy
         [echo] To create new jobs from predefined templates, run the following
    command:
         [echo]     ant -f
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/build.xml
    create-new-job-def
     
    BUILD SUCCESSFUL
    Total time: 49 seconds 
    
    [extensibility_scripts]$ ant
     
    Buildfile: build.xml
     
    -init:
     
    create-user-home:
    [input] Enter which template should be used (source_template)
    (default=Fusion)
        [input]      ([Fusion], Standalone)
    Standalone
        [input] Enter Middleware Home Directory path (fmw_home_dir) (default=) []
    /scratch/fmwtools/mw_home
        [input] Enter hosting application name (hosting_application_name)
    (default=MyAppEss) [MyAppEss]
    NewDemoApp
        [input] Enter hosting application JPS stripe id
    (hosting_application_stripe_id) (default=MyAppEss) [MyAppEss]
    NewDemoApp
        [input] Do you want to add shared library for the (java) job business
    logic? (use_jobdef_library) (default=yes)
        [input]      ([yes], no)
    yes
        [input] Enter the shared library name for the job business logic
    (jobdef_library_name) (default=MyJobsLibrary) [MyJobsLibrary]
    NewDemoAppJobsLib
    [input] Enter an empty directory where the applications will be created
    (user_home)
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [echo]
         [echo]
        [mkdir] Created dir:
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
    [propertyfile] Creating new property file:
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/template.properties
         [copy] Copying 11 files to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [copy] Copied 25 empty directories to 9 empty directories under
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [copy] Copying 1 file to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/ant/config
         [copy] Copying 1 file to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [copy] Copying 15 files to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [move] Moving 1 file to
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/Template_Hosting
         [echo]
         [echo] ========================================
         [echo]
         [echo] A new workspace has been created at:
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp
         [echo] This workspace can be opened and modified using JDeveloper
         [echo] To deploy the applications, run the following command:
         [echo]     ant -f
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/ant/build-ess.xml
    deploy
         [echo] To create new jobs from predefined templates, run the following
    command:
         [echo]     ant -f
    /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/build.xml
    create-new-job-def
     
    BUILD SUCCESSFUL
    Total time: 1 minute 32 seconds 

5.4 Antを使用した共有ライブラリとしてのJavaジョブの作成

新しいホスティング・アプリケーションを作成したときに生成されたビルド・ファイル内のcreate-new-job-def Antターゲットを実行して、Javaジョブ・クラス・テンプレートを作成できます。

詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照してください。

ここで作成するJavaクラスは、Javaジョブを実装するロジックを追加できるテンプレートとなります。JavaジョブではJavaコードを実行します。実装されるJavaジョブに対しては、そのジョブの仕様の一部から構成されるメタデータを追加できます。

ノート:

現在、このAntターゲットでは同期Javaジョブ・テンプレートのみを作成できます。

ターゲットが実行されるとき、ターゲットの作業のガイドとなる詳細を入力することを要求されます。開始する前に、Antターゲットによって要求される次の情報を用意しておきます。

表5-4 Antターゲットで必要な情報

入力プロンプト 説明

作成するジョブ定義テンプレートの数

作成するJavaジョブ実装のタイプに対応する数です。現在、この方法で作成できるのは同期Javaジョブのみであるため、サポートされている値は1のみとなります。

ジョブ定義のJavaパッケージ名

作成するJavaジョブのパッケージ名です。

ジョブ定義のJavaクラス名

作成するJavaジョブのクラス名です。

Antを使用してJavaジョブ・クラス・テンプレートを作成するには:

  1. 開始するには、コンソール・ウィンドウで、ディレクトリを、アプリケーションを作成する場所として指定したディレクトリに変更します。build.xmlファイルがそこに存在する必要があります。次のコマンドを使用して、ターゲットを実行します。
    ant create-new-job-def
    

    Antコンソール出力の次の例で、プロンプトがどこで発生するかを確認できます。情報を入力すると、ターゲットは要求されたファイルを作成し、必要なファイルを新しいワークスペースにコピーし、新しいホスティング・アプリケーション用の一部の構成を設定します。

    [extensibility_scripts]$ ant -f /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/build.xml create-new-job-def
    
    Buildfile: /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/build.xml
    
    -init:
    
    create-new-job-def:
         [echo] Available Job Definition Templates:
         [echo]     1) Simple Synchronous Java Job
        [input] Enter number of job definition template to create (job_template_to_create)
    1
         [echo] Calling default target on /scratch/miscFiles/ExtnDemo/extensibility_scripts/Standalone/Template_JobLibrary/simple_synchronous_job/build.xml
     
    -init:
     
    create-job-definition:
        [input] Enter Java package name for Job Definition (jobdef_package_name) (default=oracle.apps.ess.custom) [oracle.apps.ess.custom]
    oracle.apps.ess.custom
        [input] Enter Java class name for Job Definition (jobdef_class_name) (default=MySynchronousJavaJob) [MySynchronousJavaJob]
    NewDemoHelloWorld
         [copy] Copying 1 file to /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/NewDemoApp/EssSharedLibrary/src
         [copy] Copying 1 file to /scratch/WLServers/MW_HOME/standalone_apps/NewDemoApp/NewDemoApp/EssSharedLibrary/src/oracle/apps/ess/custom
     
    BUILD SUCCESSFUL
    Total time: 34 seconds
    
  2. Javaジョブ用のクラス・テンプレートを作成すると、ジョブのロジックを実装するコードを追加できます。このテンプレートは、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」で、ホスティング・アプリケーションを作成したときに作成した、JDeveloperワークスペース内のプロジェクトにあります。ファイルのディレクトリ・パスは、Antコンソール出力に示されます。Javaコードを編集する場合、JDeveloperや単純なテキスト・エディタなど、希望のエディタを使用できます。

    Javaファイルを開き、コードを追加して、execute()メソッドを実装します。例5-1は、どのようなコードが生成されるかを示しています。oracle.as.scheduler.Executableインタフェースのexecute()メソッドの単純な実装を、Javaジョブの作業を実行するコードに置き換えます。

例5-1 Oracle Enterprise SchedulerのHelloWorld Javaクラス

package oracle.apps.ess.custom;

import java.io.StringWriter;
import java.security.AccessControlContext;
import java.security.AccessController;
import javax.security.auth.Subject;

import oracle.as.scheduler.RequestParameters;
import oracle.as.scheduler.job.BaseSynchronousJavaJob;
import oracle.as.scheduler.request.ContentType;
import oracle.security.jps.util.SubjectUtil;

public class NewDemoHelloWorld extends BaseSynchronousJavaJob {

    public NewDemoHelloWorld() {
        super();
    }

    protected void execute() throws Exception 
    {
        long requestId = getRequestExecutionContext().getRequestId();
        RequestParameters params = getRequestParameters();
        AccessControlContext accContext = AccessController.getContext();
        Subject subject = Subject.getSubject(accContext);
        String username = SubjectUtil.getUserName(subject);          
       /*
        * Write contents to request log
        */
        StringWriter strWriter = new StringWriter();
        strWriter.write("Simple ESS Java job execution LOG");
        strWriter.write("ESS Job requestID: " + requestId);
        strWriter.write("Username: " + username);
        writeToRequestLog(requestId, strWriter.toString());

       /*
        * Write Text contents to request output 
        */
        strWriter = new StringWriter();
        strWriter.write("Simple ESS Java job execution Text Out");
        strWriter.write("ESS Job requestID: " + requestId);
        strWriter.write("Username: " + username);
        writeToRequestOutput(requestId, strWriter.toString(), ContentType.Text);
    }
}

5.5 Antを使用したJavaジョブの共有ライブラリとしてのパッケージ化

package_essjob_library Antターゲットを実行して、Javaジョブ実装をパッケージ化できます。

ノート:

新しいホスティング・アプリケーションを作成すると、このターゲットが含まれたビルド・ファイルが生成されます。(詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照。)

package_essjob_libraryターゲットによって、ジョブ・コードのコンパイルおよびJARが実行されます。このターゲットは、ユーザーによる入力は必要なく、単に実行されて完了します。

Antを使用してJavaジョブ・クラス実装をパッケージ化するには:

  • コンソール・ウィンドウで、ディレクトリを、ホスティング・アプリケーションを作成する場所として指定したディレクトリに変更します。次のコマンドを使用して、ターゲットを実行します。

    ant package_essjob_library

5.6 Antを使用した共有ライブラリのデプロイ

deploy_essjob_library Antターゲットを実行して、Javaジョブ共有ライブラリをデプロイできます。

ノート:

新しいホスティング・アプリケーションを作成すると、このターゲットが含まれたビルド・ファイルが生成されます。(詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照。)

deploy_essjob_libraryターゲットは、ジョブ・ライブラリをデプロイします。このターゲットは、ユーザーによる入力は必要なく、単に実行されて完了します。

Antを使用してJavaジョブ共有ライブラリをデプロイするには:

  • コンソール・ウィンドウで、ディレクトリを、ホスティング・アプリケーションを作成する場所として指定したディレクトリに変更します。次のコマンドを使用して、ターゲットを実行します。

    ant deploy_essjob_library

5.7 Antを使用したホスティング・アプリケーションのパッケージ化

package_hosting_app Antターゲットを実行して、ホスティング・アプリケーションをパッケージ化できます。

ノート:

新しいホスティング・アプリケーションを作成すると、このターゲットが含まれたビルド・ファイルが生成されます。(詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照。)

package_hosting_appターゲットは、create-user-homeターゲットで作成されたホスティング・アプリケーションをパッケージ化します(詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照)。このターゲットは、ユーザーによる入力は必要なく、単に実行されて完了します。

Antを使用してホスティング・アプリケーションをパッケージ化するには:

  • コンソール・ウィンドウで、ディレクトリを、ホスティング・アプリケーションを作成する場所として指定したディレクトリに変更します。次のコマンドを使用して、ターゲットを実行します。

    ant package_hosting_app

5.8 Antを使用したホスティング・アプリケーションのデプロイ

deploy_hosting_app Antターゲットを実行して、ホスティング・アプリケーションをデプロイできます。

ノート:

新しいホスティング・アプリケーションを作成すると、このターゲットが含まれたビルド・ファイルが生成されます。(詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照。)

deploy_hosting_appターゲットは、create-user-homeターゲットで作成されたホスティング・アプリケーションをデプロイします(詳細は、「Antを使用したホスティング・アプリケーションおよびプロジェクト・ワークスペースの作成」を参照)。このターゲットは、ユーザーによる入力は必要なく、単に実行されて完了します。

Antを使用してホスティング・アプリケーションをデプロイするには:

  • コンソール・ウィンドウで、ディレクトリを、ホスティング・アプリケーションを作成する場所として指定したディレクトリに変更します。次のコマンドを使用して、ターゲットを実行します。

    ant deploy_hosting_app

5.9 生成されたAntターゲットの構成

ファイルuser_home/ant/config/ess-build.propertiesには、ビルド、パッケージ化およびデプロイメント時にAntスクリプトによって使用される情報を指定するための様々なパラメータが含まれています。user_homeは、アプリケーション・ワークスペースを格納するよう指定したディレクトリです。

アーカイブのデプロイメントの前に、WebLogic Serverに基づく詳細をユーザーの環境に合わせて変更する必要があります。

表5-5で説明しているビルド・プロパティを使用して、Antターゲットを独自の構成値でカスタマイズします。

表5-5 Antビルドをカスタマイズするためのビルド・プロパティ

ビルド・プロパティ 説明

customEss.hostapp.earprofile

[-]

customEss.hostapp.jarfile

[-]

customEss.hostapp.jarprofile

[-]

customEss.hostapp.jprproject

[-]

customEss.hostapp.jwsfile

[-]

customEss.hostapp.mds.jdbc

[-]

customEss.hostapp.mds.partition

[-]

customEss.hostapp.name

生成されたホスティング・アプリケーションに使用する名前です。

customEss.hostapp.workspace

[-]

customEss.project.dir

生成されたJDeveloperプロジェクトのディレクトリの場所です。

customEss.shared.library.name

生成された共有ライブラリに付けられた名前です。

ess.script.base.dir

[-]

fmw.home

[-]

jdev.home

[-]

oracle.common

[-]

ess.server.name

Oracle Enterprise Schedulerジョブ・ライブラリおよびホスティング・アプリケーションがデプロイされるOracle Enterprise Schedulerの管理/管理対象サーバーのカンマで区切られた名前。

weblogic.admin.user

WebLogic Serverの管理ユーザー名。

weblogic.server.host

[-]

weblogic.server.port

[-]

weblogic.server.ssl.port

[-]

weblogic.t3.url

[-]

# ESS build properties
ess.script.base.dir=${user_home}
 
fmw.home=${fmw_home}
jdev.home=${fmw.home}/jdeveloper
oracle.common=${fmw.home}/oracle_common
 
# ========== ESS JDev project details ===============
customEss.project.dir=${ess.script.base.dir}
 
customEss.hostapp.workspace=${hosting_application_name}
customEss.hostapp.jwsfile=${hosting_application_name}
customEss.hostapp.earprofile=${hosting_application_name}
customEss.hostapp.jprproject=EssSharedLibrary
customEss.hostapp.jarprofile=EssSharedLibrary
customEss.hostapp.jarfile=${jobdef_library_name}
 
customEss.shared.library.name=${jobdef_library_name}
 
customEss.hostapp.mds.partition=${hosting_application_name}
customEss.hostapp.mds.jdbc=mds-ESS_MDS_DS
customEss.hostapp.name=${hosting_application_name}
 
# ========== Weblogic Server details ===============
MW_HOME=${fmw.home}
ORACLE_HOME=${jdev.home}
MW_ORA_HOME=${jdev.home}
COMMON_COMPONENTS_HOME=${oracle.common}
WEBLOGIC_HOME=${fmw.home}/wlserver_10.3
weblogic.server.host=adc2170657.example.com
WEBLOGIC_HOME=${fmw.home}/wlserver_10.3
weblogic.server.host=adc2170657.example.com
weblogic.server.port=7001
weblogic.server.ssl.port=7002
weblogic.admin.user=weblogic
weblogic.t3.url=t3://${weblogic.server.host}:${weblogic.server.port}
# Comma separated names of ess admin/managed servers to which essjob library and    hosting app is deployed
ess.server.name=AdminServer