第4章 KIE Server への Oracle WebLogic Server の設定

Oracle WebLogic Server に KIE Server をデプロイする前に、システムプロパティー、セキュリティー設定、JMS 要件、その他の Oracle WebLogic Server プロパティーを設定する必要があります。この設定により、KIE Server との最適な統合が促進されます。

前提条件

  • Oracle WebLogic Server をインストールし、実行している。
  • WebLogic 管理コンソールにログインしている。

4.1. KIE Server のグループおよびユーザーの設定

WebLogic 管理コンソールでユーザーを kie-server グループに割り当て、Oracle WebLogic Server で、コンテナー管理の認証メカニズムを有効にします。

手順

  1. WebLogic 管理コンソールで Security Realms に移動します。
  2. 必要なセキュリティーレルムを選択するか、New をクリックして新しいセキュリティーレルムを作成します。
  3. Users and GroupsGroupsNew の順に移動して、kie-server グループを作成します。
  4. UsersNew の順に移動し、新しいユーザーを作成します。
  5. server-user などのユーザーとそのパスワードを入力し、OK をクリックします。

    重要

    選択したユーザー名が、ロールまたはグループの名前と競合しないようにします。たとえば、kie-server という名前のロールが存在する場合は、kie-server という名前のユーザーを作成しないでください。

  6. 新たに作成したユーザーをクリックして、Groups タブに戻ります。
  7. 選択ツールを使用して、kie-server グループを Available フィールドから Chosen フィールドに移動し、Save をクリックします。

4.2. Oracle WebLogic Server への JDBC データソースの設定

データソースは、アプリケーションサーバーなど、Java Database Connectivity (JDBC) クライアントを有効にするオブジェクトで、データベースへの接続を確立します。アプリケーションは、JNDI (Java Naming and Directory Interface) ツリーまたはローカルのアプリケーションコンテキストでデータソースを検索し、データ接続を要求してデータを取得します。Oracle WebLogic Server にデータソースを設定して、サーバーと、指定したデータベースとの間で適切なデータ交換を行う必要があります。

前提条件

  • データベース接続を作成するのに使用する JDBC ドライバーが、データソースをデプロイするすべてのサーバーにインストールされている。一部の JDBC ドライバーが Oracle WebLogic Server にインストールされている (DB2、Informix、MS SQL Server、および Sybase 用の WebLogic ブランドの DataDirect JDBC ドライバーなど)。JDBC ドライバーの詳細は、Oracle Help Center の「Using JDBC Drivers with WebLogic Server」を参照してください。

手順

  1. Red Hat カスタマーポータルの Software Downloads ページに移動し (ログインが必要)、ドロップダウンオプションから製品およびバージョンを選択します。

    • 製品: Process Automation Manager
    • バージョン: 7.8
  2. Red Hat Process Automation Manager 7.8.0 Add-Ons をダウンロードします。
  3. 以下の手順を実行して、データベースを準備します。

    1. TEMP_DIR などの一時ディレクトリーに rhpam-7.8.0-add-ons.zip を展開します。
    2. TEMP_DIR/rhpam-7.8.0-migration-tool.zip を展開します。
    3. 現在のディレクトリーから、TEMP_DIR/rhpam-7.8.0-migration-tool/ddl-scripts ディレクトリーに移動します。このディレクトリーには、複数のデータベースタイプの DDL スクリプトが含まれています。
    4. 使用するデータベースに、お使いのデータベースタイプの DDL スクリプトをインポートします。以下に例を示します。

      psql jbpm < /ddl-scripts/postgresql/postgresql-jbpm-schema.sql
  4. WebLogic 管理コンソールで、Change CenterLock & Edit の順に移動します。
  5. Domain Structure で、ServicesData Sources の順に移動します。
  6. Summary of Data Sources ページで、NewGeneric Data Source の順にクリックします。
  7. JDBC Data Sources Properties ページで、以下の情報を入力するか、選択します。

    • Name: この JDBC データソースの名前を入力します。この名前は設定ファイル (config.xml) と管理コンソールでこのデータソースを参照するのに使用されます。
    • JNDI Name: JDBC データソースをバインドするJNDI パスを入力します。アプリケーションは、接続を予約する際に、この名前を使用して、JNDI ツリーでデータソースを検索します。
    • Database Type: 接続するデータベースの DBMS を選択します。DBMS が記載されていない場合は Other を選択します。
  8. Next をクリックして、続行します。
  9. データベースに接続するのに使用する データベースドライバー を選択します。この一覧には、選択した DBMS 用の一般的な JDBC ドライバーと、すでにインストールされているその他の JDBC ドライバーが含まれます。
  10. Transaction Options ページで、Supports Global Transactions オプションを選択したままにし、利用可能なトランザクションオプションから選択します。このチェックボックスの選択をはずし、このデータソースでグローバルトランザクションを無効 (無視) することもできます。多くの場合、最適なデータ効率を得るために、このオプションは選択したままにする必要があります。

    • Two-Phase Commit: このオプションを選択すると、標準の XA 処理が有効になります。このオプションは、XA JDBC ドライバーを選択して、データベース接続を作成する場合に限り使用できます。
    • Logging Last Resource: このオプションを選択すると、LLR (Logging Last Resource) トランザクションの最適化を使用するグローバルトランザクションに非 XA JDBC 接続を使用できるようになります。このオプションは、Emulate Two-Phase Commit よりも推奨されます。このオプションは、非 XA JDBC ドライバーを選択してデータベース接続を作成する場合に限り使用できます。
    • Emulate Two-Phase Commit: このオプションを選択すると XA JDBC 接続が有効になり、JTA を使用する分散トランザクションでの使用がエミュレートされます。このオプションは、アプリケーションがヒューリスティック条件を容認する場合に限り選択します。このオプションは、非 XA JDBC ドライバーを選択してデータベース接続を作成する場合に限り使用できます。
    • One-Phase Commit: このオプションを選択すると、グローバルトランザクションで使用する 非 XA 接続のみをトランザクションに使用します。このオプションは、非 XA JDBC ドライバーを選択してデータベースの接続を作成する場合に限り使用できます。
  11. Next をクリックして、続行します。
  12. Connection Properties ページで、以下のプロパティーに値を入力します。

    • Service Name: 接続するデータベースのサービス名を指定します。データソースが 1 つ以上提供されている場合は、各データソースに同じサービス名を指定する必要があります。このフィールドは、Oracle Real Application Clusters (RAC) に利用可能なサービスインスタンス接続ドライバーが 1 つ選択されている場合に限り使用できます。
    • Database Name: 接続するデーターベースの名前を入力します。データベースの名前要件は、JDBC ドライバーおよび DBMS によって異なります。
    • Host Name: データベースをホストするサーバーの DNS 名または IP アドレスを入力します。Oracle GridLink サービスインスタンス接続を作成し、データソースを 1 つ以上提供する場合は、各データソースに対する接続は同じにする必要があります。
    • Port: 接続要求に対してデータベースサーバーがリッスンするポートを入力します。
    • Database User Name: データソースの各接続で使用するデータベースのユーザーアカウント名を入力します。
    • Password/Confirm Password: データベースユーザーアカウントのパスワードを入力します。
    • oracle.jdbc.DRCPConnectionClass: お使いの環境で必要な場合は、オプションで、DCRP (Database Resident Connection Pooling) 接続クラスを入力します。
  13. Next をクリックして、続行します。
  14. Test Database Connection ページで接続パラメーターを確認して、Test Configuration をクリックします。

    Oracle WebLogic Server は、管理サーバーからデータベースへの接続を作成しようとします。接続テストの結果がページ上部に表示されます。テストに失敗した場合は、設定エラーを修正して、再度テストしてみてください。

  15. Next をクリックして続行します。選択した JDBC ドライバーが管理サーバーにインストールされていない場合は、この手順を省略できます。
  16. Select Targets ページで、データソースをデプロイするサーバーまたはクラスターを選択し、Finish をクリックします。
  17. WebLogic 管理コンソールのメインメニューに戻り、Change CenterActivate Changes の順に選択します。

Oracle WebLogic Server データソースの詳細は、Oracle Help Center の『JDBC Data Sources for Oracle WebLogic Server』を参照してください。

4.3. Java Message Service (JMS) の設定

Java Message Service (JMS) は、KIE Server が、Oracle WebLogic Server、IBM WebSphere Application Server などのアプリケーションサーバーとメッセージを交換するために使用する Java API です。KIE Server を経由して JMS メッセージを送受信するようにアプリケーションサーバーを設定し、2 台のサーバー間でコラボレーションが適切に行われるようにします。

4.3.1. JMS サーバーの作成

JMS を使用するには JMS サーバーを作成する必要があります。

手順

  1. WebLogic 管理コンソールで、ServicesMessagingJMS Servers の順に移動します。
  2. New をクリックして、JMS サーバーを新たに作成します。
  3. JMS サーバーの名前を入力して、Next をクリックします。
  4. KIE Server デプロイメントに使用するターゲットサーバーを選択します。
  5. Finish をクリックします。

4.3.2. JMS モジュールの作成

接続ファクトリー、キューなどの JMS リソースを格納する JMS モジュールを作成する必要があります。

前提条件

  • JMS サーバーを作成している。

手順

  1. WebLogic 管理コンソールで、ServicesMessagingJMS Modules の順に移動します。
  2. New をクリックしてモジュールを作成します。
  3. モジュール名を入力し、Next をクリックします。
  4. KIE Server デプロイメントに使用するターゲットサーバーを選択し、Finish をクリックします。
  5. 新たに作成したモジュール名をクリックし、Subdeployments をクリックします。
  6. New をクリックして、モジュールのサブデプロイメントを作成します。
  7. サブデプロイメントの名前を入力し、Next をクリックします。
  8. チェックボックスを選択して、事前に作成した JMS サーバーを選択します。
  9. Finish をクリックして、サブデプロイメントの設定を完了します。

4.3.3. JMS 接続ファクトリーの作成

KIE Server でメッセージングを有効にするには、メッセージの送受信に JMS 接続ファクトリーをいくつか作成する必要があります。

前提条件

  • JMS サーバーを作成している。
  • JMS モジュールを作成している。

手順

  1. WebLogic 管理コンソールで、ServicesMessagingJMS Modules の順に移動して、JMS モジュールの一覧を確認します。
  2. 事前に作成したモジュールを選択し、New をクリックして新しい JMS リソースを作成します。
  3. Connection Factory を選択し、Next をクリックします。
  4. 以下に示す必須の各接続ファクトリーに、接続ファクトリー名 (例: KIE.SERVER.REQUEST) および JNDI 名 (例: jms/cf/KIE.SERVER.REQUEST) を入力し、Next をクリックします。接続ファクトリーが、JMS モジュールにデフォルトで割り当てるサーバーを自動的に選択します。
  5. Finish をクリックして接続ファクトリーを追加し、必要な各ファクトリーに対して上記手順を繰り返します。

4.3.3.1. KIE Server の JMS 接続ファクトリー

以下は、KIE Server で JMS メッセージングを有効にするために必要な Java Message Service (JMS) 接続ファクトリーになります。

表4.1 KIE Server に必要な JMS 接続ファクトリー

名前デフォルト値用途

KIE.SERVER.REQUEST

jms/cf/KIE.SERVER.REQUEST

全要求を KIE Server へ送信

KIE.SERVER.RESPONSE

jms/cf/KIE.SERVER.RESPONSE

KIE Server が生成する応答をすべて受信

KIE.SERVER.EXECUTOR

jms/cf/KIE.SERVER.EXECUTOR

KIE Server エグゼキューターサービス

4.3.4. JMS キューの作成

JMS キューは、ポイントツーポイントメッセージング (point-to-point messaging) の宛先エンドポイントになります。KIE Server で JMS メッセージングを有効にするには JMS キューをいくつか作成する必要があります。

前提条件

  • JMS サーバーを作成している。
  • JMS モジュールを作成している。

手順

  1. WebLogic 管理コンソールで、ServicesMessagingJMS Modules の順に移動して、JMS モジュールの一覧を確認します。
  2. 事前に作成したモジュールを選択し、New をクリックして新規 JMS リソースを作成します。
  3. Queue を選択し、Next をクリックします。
  4. 以下に示す必須の各キューに、キューの名前 (例: KIE.SERVER.REQUEST) および JNDI 名 (例: jms/KIE.SERVER.REQUEST) を入力して、Next をクリックします。
  5. JMS サーバーに接続する JMS モジュールのサブデプロイメントを選択します。
  6. Finish をクリックしてキューを追加し、必要な各キューに上記手順を繰り返します。

4.3.4.1. KIE Server 向けの JMS キュー

以下は、KIE Server で JMS メッセージングを有効にするために必要な Java Message Service (JMS) キューです。

表4.2 KIE Server に必要な JMS キュー

名前デフォルト値用途

KIE.SERVER.REQUEST

jms/KIE.SERVER.REQUEST

全要求を KIE Server へ送信

KIE.SERVER.RESPONSE

jms/KIE.SERVER.RESPONSE

KIE Server が生成する応答をすべて受信

KIE.SERVER.EXECUTOR

jms/KIE.SERVER.EXECUTOR

KIE Server エグゼキューターサービス

4.4. Oracle WebLogic Server へのシステムプロパティーの設定

KIE Server をデプロイする前に、Oracle WebLogic Server に、本セクションに記載するシステムプロパティーを設定します。

手順

  1. Java Virtual Machine (JVM) のメモリーサイズを増やすには、以下のシステムプロパティーを設定します。

    USER_MEM_ARGS=-Xms512m -Xmx1024m

    JVM メモリーサイズを増やさないと、KIE Server のデプロイ時に Oracle WebLogic Server がフリーズするか、エラーが発生します。

  2. Oracle WebLogic Server インスタンスに、以下の KIE Server システムプロパティーを指定します。

    表4.3 KIE Server のシステムプロパティー

    名前説明

    kie.server.jms.queues.response

    jms/KIE.SERVER.RESPONSE

    KIE Server が使用する応答用の JMS キューの JNDI 名。

    org.kie.server.domain

    OracleDefaultLoginConfiguration

    JMS の使用時にユーザーの認証に使用される JAAS LoginContext ドメイン。

    org.kie.server.persistence.ds

    jdbc/jbpm

    KIE Server のデータソースの JNDI 名。

    org.kie.server.persistence.tm

    org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform

    Hibernate プロパティーを設定するためのトランザクションマネージャープラットフォーム。

    org.kie.server.persistence.dialect

    例: org.hibernate.dialect.H2Dialect

    使用する Hibernate 方言を指定します。データソースに従って設定します。

    org.kie.executor.jms.queue

    jms/KIE.SERVER.EXECUTOR

    KIE Server へのジョブエグゼキューターの JMS キュー。

    org.kie.executor.jms.cf

    jms/cf/KIE.SERVER.EXECUTOR

    KIE Server へのジョブエグゼキューターの JMS 接続ファクトリー。

    org.kie.server.router

    例: http://localhost:9000

    (オプション) クラスター化された KIE Server 環境で、アプリケーションサーバーがその一部である 1 つ以上の KIE Server ルーター (Smart Router) の URL を 1 つ以上指定します。

  3. JAVA_OPTIONS 環境編集に同じプロパティー値を設定します。
JAVA_OPTIONS="-Dkie.server.jms.queues.response=jms/KIE.SERVER.RESPONSE
 -Dorg.kie.server.domain=OracleDefaultLoginConfiguration
 -Dorg.kie.executor.jms.cf=jms/cf/KIE.SERVER.EXECUTOR
 -Dorg.kie.executor.jms.queue=jms/KIE.SERVER.EXECUTOR
 -Dorg.kie.server.persistence.ds=jdbc/jbpm
 -Dorg.kie.server.persistence.tm=org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform
 -Dorg.kie.server.persistence.dialect=org.hibernate.dialect.H2Dialect
// Optional server router, for clustered server environment
 -Dorg.kie.server.router=http://localhost:9000

4.5. Oracle WebLogic Server の停止および再起動

Oracle WebLogic Server で必要なシステムプロパティーをすべて設定したら、Oracle サーバーを停止して再起動し、設定が適用されていることを確認します。

手順

  1. WebLogic 管理コンソールで、Change CenterLock & Edit の順に移動します。
  2. Domain StructureEnvironmentServersControl の順にクリックします。
  3. 停止するサーバーを選択して、Shutdown をクリックします。
  4. When Work Completes を選択してサーバーを正常に停止するか、Force Shutdown Now を選択して継続中のタスクの完了を待たずに直ちにサーバーを停止します。
  5. Server Life Cycle Assistant ペインで Yes をクリックして、シャットダウンを完了します。
  6. シャットダウンが完了したら、端末でドメインディレクトリーに移動し、WLS_HOME/user_projects/<DOMAIN_NAME> に移動します。以下は例となります。

    WLS\user_projects\mydomain
  7. 以下のいずれかのコマンドを実行して Oracle WebLogic Server を再起動し、新しい設定を適用します。

    UNIX ベースのシステムの場合:

    startWebLogic.sh

    Windows オペレーティングシステムの場合:

    startWebLogic.cmd
  8. Web ブラウザーで管理コンソール (例: http://localhost:7001/console/) を開き、認証情報を使用してログインします。