Cloud Software Group, Inc. EBX®
ドキュメント > 管理ガイド > インストールと構成
ナビゲーションモードドキュメント > 管理ガイド > インストールと構成

Java EE 展開

はじめに

ここでは、Java アプリケーションサーバーでの TIBCO EBX® の展開仕様について詳しく説明します。サポートされるアプリケーションサーバーと固有の制限事項に関する具体的な情報については、サポートされる環境を参照してください。

安全な展開をナビゲートする方法については、セキュリティのベストプラクティスを参照してください。

ソフトウェアコンポーネント

EBX® は次のコンポーネントを使用します。

以下も参照してください。

埋め込みサードパーティライブラリ

EBX® の独立性と相互運用性を高めるために、独自のサードパーティライブラリが埋め込まれています。一部が変更され、競合回避されている場合も、これらは正式な Java API であるため、その他は変更しないでおく必要があります。

競合を引き起こす可能性があるのは次のとおりです。

サードパーティライブラリのバージョンまたは詳細については、TIB_ebx_6.1.3_license.pdf を参照してください。

これらのライブラリはすでに統合されているため、カスタム Web アプリケーションにこれらを新たに追加しないでください。そうでない場合は、リンケージエラーが発生する可能性があります。さらに、同じ理由で、ebx.jar ライブラリ以外にこれらを展開しないでください。

必須のサードパーティライブラリ

EBX® には、いくつかのサードパーティ Java ライブラリが必要です。これらのライブラリは展開し、ebx.jar のクラスローダーからアクセス可能にする必要があります。使用されるアプリケーションサーバーおよび Java ランタイム環境によっては、これらのライブラリがすでに存在する場合や、手動で追加する必要がある場合があります。

データ圧縮ライブラリ

ebx-lz4.jar という名前のライブラリは、ebx.jar とは別に展開する必要があります。これには、いくつかの圧縮実装が含まれています (JNI 専用アーキテクチャライブラリと Java フォールバック)。以下の要件により、EBX® リポジトリの最適な圧縮および解凍パフォーマンスを確保できます。前提条件を検証できない場合、EBX® は Java フォールバックの安全または安全でないモードで機能しますが、パフォーマンスは低下します。ebx-lz4.jar ライブラリのデフォルトの場所は、ebx.jar の横にあります。

EBX® リポジトリで実際に使用されている圧縮の実装を確認するには、[管理] > [システム情報] の [リポジトリ情報] セクションで [圧縮] の値を確認してください。最適なパフォーマンスを得るには、この値が「JNI-検証済み」である必要があります。それ以外の場合は、Java フォールバックに対して「Java[Safe|Unsafe] - 検証済み」になります。

パフォーマンス要件

JNI アクセスは、次のオペレーティングシステムアーキテクチャで許可されています。i386x86amd64x86_64aarch64 または ppc64le。この値を確認するには、[管理] > [システム情報] の [システム情報] セクションで [オペレーティングシステムアーキテクチャ] の値を確認してください。

ebx-lz4.jar の JNI アクセスを有効にするには、ライブラリをシステムクラスローダー (アプリケーションクラスローダーとも呼ばれる) でロードする必要があります。展開は、アプリケーションサーバー固有の手順に従って行えます。

データベースドライバー

EBX® リポジトリにはデータベースが必要です。一般に、必要なドライバーは、データソースが使用されている場合は、データソースとともに構成されます。メイン構成ファイルで定義されているデータベースに応じて、次のいずれかのドライバーが必要です。どのデータベースを使用する場合でも、JDBC クライアントドライバーのバージョンは、データベースサーバーのバージョン以上である必要があることに注意してください。

H2

バージョン 2.2.224 が検証されました。H2 は運用環境ではサポートされていないことに注意してください。

https://www.h2database.com/

H2 リポジトリがバージョン 1.0 ドライバーで構築されている場合は、この v2 プロセスへの移行を適用する必要があります。

Oracle JDBC

Oracle データベース 21c は、最新のパッチセットアップデートで検証されています。

データベースサーバーのバージョンと Java ランタイム環境のバージョンに応じて、使用する必要のあるドライバーを決定します。JDK8 で ojdbc8.jar 認定ライブラリをダウンロードします。

Oracle データベース JDBC ドライバーのダウンロード

SQL Server JDBC

すべての修正パッチとメンテナンスパッチが適用された SQL Server 2012 SP4 以降が検証されています。

古いバージョンではいくつかの問題が発生しているため、最新の JDBC ドライバーを使用してください。

使用する Java ランタイム環境のバージョンに応じて、mssql-jdbc-8.4.1.jre8.jar または mssql-jdbc-8.4.1.jre11.jar ライブラリを追加します。

Microsoft JDBC Driver 8.4.1 for SQL Server (zip) のダウンロード

PostgreSQL

PostgreSQL Java 8 が検証されています。

データベースサーバーおよび Java ランタイム環境用にリリースされた最新の JDBC ドライバーバージョン 4.2 を追加します。

PostgreSQL JDBC ドライバーのダウンロード

SMTP とメール

使用される Web アプリケーションサーバーによっては、メール管理用のライブラリ JavaMail API がすでに提供されています。そうでない場合は、手動で追加する必要があります。

EBX® には、この API のバージョン 1.5.6 と互換性のあるライブラリが必要です。構成の詳細については、SMTP とメールの有効化と構成を参照してください。

手動インストールを容易にするために、javax.mail-1.5.6.jar が提供され、ebx.software/lib/lib-mail ディレクトリに配置されています。

以下も参照してください。

Secure Socket Layer (SSL)

SSL 機能のアクティベーション、構成、管理は、使用される Web アプリケーションサーバーと密接にリンクされています。したがって、適切な Web アプリケーションサーバーのドキュメントを参照する必要があります (例、Tomcat SSL/TLS Configuration How-To)。

以下も参照してください。

Java メッセージサービス (JMS)

JMS を使用する場合は、バージョン 1.1 以降が必要です。

Java EE アプリケーションサーバーまたは Servlet/Java Server Pages (JSP) 実装のどちらが使用されているかに応じて、必要なライブラリは次のとおりです。

注意

EBX® では、サポートされる JMS モデルは Point-to-Point (PTP) のみです。PTP システムでは、メッセージのキューが許可されます。

以下も参照してください。

Web アプリケーション

EBX® は、追加するカスタム EBX® モジュール Web アプリケーションがない場合に直接展開可能な、事前パッケージ化された EAR を提供します。カスタム Web アプリケーションを EBX® モジュールとして展開する場合は、ビルトイン Web アプリケーションと同一レベルでパッケージ化されたカスタムモジュールを含む EAR を再構築することをお勧めします。

注意

/ パスコンテキストでの Web アプリケーションの展開はサポートされなくなりました。パスコンテキストは空にすることはできず、/ と等しくすることもできません。さらに、異なる深さのパスでの Web アプリケーションの展開は推奨されません。すべての Web アプリケーションパスのコンテキストは、パスの深さを同一に設定する必要があります。

詳細については、この章の末尾の EBX® EAR の再パッケージ化に関する注意事項を参照してください。

EBX® ビルトイン Web アプリケーション

EBX® には、次のビルトイン Web アプリケーションが含まれています。

Web アプリケーション名

説明

必須

ebx

起動時に初期化を処理する EBX® エントリポイント。詳細については、展開の詳細を参照してください。

はい

ebx-root-1.0

EBX® ルート Web アプリケーション。EBX® を使用するアプリケーションでは、ルート Web アプリケーションを展開する必要があります。

はい

ebx-ui

EBX® ユーザーインターフェイス Web アプリケーション

はい

ebx-authentication

EBX® 認証アプリケーション

はい

ebx-manager

EBX® ユーザーインターフェイス Web アプリケーション

はい

ebx-dma

EBX® データモデルアシスタント。ユーザーインターフェイスによるデータモデルの作成を支援します。

注意:データモデルアシスタントでは、ebx-manager ユーザーインターフェイス Web アプリケーションを展開する必要があります。

はい

ebx-dataservices

EBX® データサービス Web アプリケーション。データサービスでは、SOAP 操作および Web サービス記述言語 WSDL 生成標準を使用するか、ビルトイン RESTful サービスを使用して、EBX® リポジトリとの外部インタラクションを許可します。

注意:EBX® Web サービスジェネレーターでは、ebx-manager ユーザーインターフェイス Web アプリケーションを展開する必要があります。

はい

カスタム Web アプリケーション

EBX® モジュールの要件に準拠するカスタム Web アプリケーションを展開することにより、EBX® の動作を拡張およびカスタマイズできます。

展開の詳細

はじめに

このセクションでは、「ebx」Web アプリケーションの展開に使用可能なさまざまなオプションについて説明します。これらのオプションは、展開記述子 (WEB-INF/web.xml) で使用可能で、メイン構成ファイルで定義されたプロパティによって補完されます。

注意

JBoss アプリケーションサーバーの場合、未使用のリソースはすべて WEB-INF/web.xml 展開記述子から削除する必要があります。

ユーザーインターフェイスと Web アクセス

Web アプリケーション「ebx」(ebx.war としてパッケージ化) には、初期化を処理し、EBX® Web ツールの唯一のユーザーインターフェイスのエントリポイントとして機能する FrontServlet サーブレットが含まれています。

FrontServlet の展開記述子の構成

Webアプリケーション「ebx」のファイル WEB-INF/web.xml で、次のエレメントを FrontServlet 用に構成する必要があります。

/web-app/servlet/load-on-startup

EBX® の起動時に FrontServlet が確実に初期化されるようにするには、web.xml 展開記述子でエレメント <load-on-startup>1</load-on-startup> を指定する必要があります。

/web-app/servlet-mapping/url-pattern

FrontServlet はパス「/」にマッピングする必要があります。

FrontServlet 用アプリケーションサーバーの構成

FrontServlet には、ServletContext など他のコンテキストへのアクセス許可が必要です。

たとえば、Tomcat では、この構成は、構成ファイル server.xml の属性 crossContext を使用して次のように実行されます。

<Context path="/ebx" docBase="(...)" crossContext="true"/>

EBX® リポジトリのデータソース

注意

EBX® のメイン構成でプロパティ ebx.persistence.url が指定されている場合、以下の環境エントリは EBX® ランタイムにより無視されます。このオプションは、便宜上提供されているだけです。完全構成可能なデータソースを使用することを常にお勧めします。特に、接続プールのサイズは、同時ユーザーの数に応じて設定する必要があります。このプロパティの詳細については、EBX® リポジトリの構成を参照してください。

EBX® の JDBC データソースは、「ebx」Web アプリケーションの展開記述子 WEB-INF/web.xml で次のように指定されます。

予約済みリソース名

デフォルトの JNDI 名

説明

jdbc/EBX_REPOSITORY

Weblogic:EBX_REPOSITORY

JBoss:java:/EBX_REPOSITORY

EBX® リポジトリの JDBC データソース

Java タイプ:javax.sql.DataSource

メールセッション

注意

EBX® のメイン構成で ebx.mail.activate が true に設定されていない場合、またはプロパティ ebx.mail.smtp.host が指定されている場合は、以下の環境エントリは、EBX® ランタイムにより無視されます。これらのプロパティの詳細については、EBX® メイン構成プロパティの SMTP を参照してください。

SMTP とメールは、次のように「ebx」Web アプリケーションの展開記述子 WEB-INF/web.xml で宣言されます。

予約済みリソース名

デフォルトの JNDI 名

説明

mail/EBX_MAIL_SESSION

Weblogic:EBX_MAIL_SESSION

JBoss:java:/EBX_MAIL_SESSION

EBX® からメールを送信するために使用される Java メールセッション

Java タイプ:javax.mail.Session

JMS 接続ファクトリー

注意

EBX® メイン構成がプロパティ ebx.jms.activate で JMS を有効にしない場合、以下の環境エントリは EBX® ランタイムにより無視されます。このプロパティの詳細については、EBX® メイン構成プロパティの JMS を参照してください。

JMS 接続ファクトリーは、次のように「ebx」Web アプリケーションの展開記述子 WEB-INF/web.xml で宣言されます。

予約済みリソース名

デフォルトの JNDI 名

説明

必須

jms/EBX_JMSConnectionFactory

Weblogic:EBX_JMSConnectionFactory

JBoss:java:/EBX_JMSConnectionFactory

アプリケーションサーバーの運用環境で構成された JMS プロバイダーとの接続を作成するために EBX® によって使用される JMS 接続ファクトリー。

Java タイプ:javax.jms.ConnectionFactory

はい

注意

JNDI 機能を備えた WildFly、JBoss、および WebLogic アプリケーションサーバーでの展開の場合、EBX.ear または EBXForWebLogic.ear を更新して、必要なすべてのリソース名を JNDI 名にマッピングする必要があります。

データサービス用の JMS

デフォルトの HTTP の代わりに JMS を使用するようデータサービスを構成するには、JMS 接続ファクトリーと、「ebx」Web アプリケーションの WEB-INF/web.xml 展開記述子で宣言された次のキューを構成する必要があります。これは、データサービス用の JMS を構成するための唯一の方法です。

ヘッダーフィールド JMSReplyTo が定義されている場合、SOAP リクエストを受信すると、オプションで SOAP 応答が返されます。この場合、フィールド JMSCorrelationID および JMSType は保持されます。

関連する EBX® の主な構成プロパティの詳細については、JMS を参照してください。

注意

EBX® のメイン構成がプロパティ ebx.jms.activate を介して JMS をアクティブ化しない場合、以下の環境エントリは EBX® ランタイムによって無視されます。このプロパティの詳細については、EBX® のメイン構成プロパティの JMS を参照してください。

予約済みリソース名

デフォルトの JNDI 名

説明

必須

jms/EBX_QueueIn

Weblogic:EBX_QueueIn

JBoss:java:/jms/EBX_QueueIn

他のアプリケーションによって EBX® に送信される着信 SOAP リクエストの JMS キュー。

Java タイプ:javax.jms.Queue

いいえ

jms/EBX_QueueFailure

Weblogic:EBX_QueueFailure

JBoss:java:/jms/EBX_QueueFailure

エラー時の JMS キュー。これには、エラー発生時の受信 SOAP リクエストが含まれています。これにより、必要に応じてこれらのメッセージを再生できます。

Java タイプ:javax.jms.Queue

注意:このプロパティの読み取りには、メイン構成で、プロパティ ebx.jms.activate.queueFailure によりエラー時のキューも有効化する必要があります。これらのプロパティの詳細については、EBX® メイン構成プロパティの JMS を参照してください。

いいえ

JAR ファイルスキャナー

Web アプリケーションサーバーの起動を高速化するには、JAR ファイルスキャナーの構成を変更して、少なくとも ebx.jar および ebx-addons.jar ライブラリを除外する必要があります。

たとえば、Tomcat では、これは catalina.properties ファイルの tomcat.util.scan.DefaultJarScanner.jarsToSkip プロパティで実行する必要があります。

インストールに関する注意事項

EBX® は、サーブレット 3.0 から 5.0 までをサポートする任意の Java EE または Jakarta EE 8 アプリケーションサーバーに展開できます。展開とインストールに関する次のドキュメントが利用可能です。

注意

  • Java EE または Jakarta EE 8 アプリケーションサーバーでの EBX® インストールに関する注意事項は、各アプリケーションサーバーのネイティブドキュメントを置き換えるものではありません。

  • 上記は一般的なインストールの推奨ではありません。インストールプロセスは、技術環境、アプリケーションの相互化、配信プロセス、組織の決定などのアーキテクチャ上の決定によって異なります。

  • これらの例では、追加の EBX® モジュールは展開されていません。カスタムモジュールまたはアドオンモジュールを展開するためのベストプラクティスは、他の EBX® モジュールと同じレベルの Web アプリケーションとしてモジュールを使用して EAR を再構築することです。Web アプリケーションは、Java™ 2 Platform Enterprise Edition 仕様 v1.4 で指定されているように、クラスパスの依存関係を宣言する必要があります。

    J2EE.8.2 のオプションのパッケージサポート

    (...)

    JAR フォーマットのファイル (例、JAR ファイル、WAR ファイル、RAR ファイル) では、参照 JAR ファイルのマニフェストファイルの Class-Path ヘッダーで参照される JAR ファイルに名前を付けることで、JAR ファイルを参照できます。参照される JAR ファイルの名前は、参照 JAR ファイルの URL に相対的な URL を使用して付けられます。マニフェストファイルは、JAR ファイルでは META-INF/MANIFEST.MF という名前です。マニフェストファイルの Class-Path エントリのフォーマットは次のとおりです。

    Class-Path: list-of-jar-files-separated-by-spaces

    「工業化」プロセスでは、カスタム EBX® モジュール、EBX® Web アプリケーション、および必要なすべての共有ライブラリを使用して、EAR を自動的に構築するスクリプトの開発を強くお勧めします。

  • 予期しない動作を回避するため、クラスローディングシステム内の ebx.jar または他のライブラリの重複を回避するガイドラインに従ってください。

  • Oracle WebLogic サーバーに展開する場合は、モジュール構造のセクションを参照してください。

ドキュメント > 管理ガイド > インストールと構成