以下の項では、Oracle SALTの管理に関する各種トピックの概要を説明します。
この項では、Oracle SALTの管理に必要な次の基本コンセプトを説明します。
Oracle Tuxedoサービス・メタデータを保存したり取得したりするために、Oracle Tuxedoサービス・メタデータ・リポジトリが開発されました。Oracle Tuxedoサービス・メタデータは、Oracle Tuxedoサービスのリクエスト/レスポンスの詳細情報を記述するために役立つOracle Tuxedoサービス属性の集合のことです。Oracle SALTゲートウェイ・サーバー(GWWS)は、Oracle Tuxedoリクエスト/レスポンス形式(バッファ・タイプ)と標準SOAPメッセージ形式との変換のため、Oracle Tuxedoサービス・メタデータ・リポジトリを使用します。
Oracle SALTを使用してOracle TuxedoサービスをWebサービスとして公開するとき、Oracle Tuxedoサービス・メタデータをOracle Tuxedoサービス・メタデータ・リポジトリで定義およびロードする必要があります。Oracle SALTはOracle Tuxedoサービス・メタデータから対応するSOAPメッセージ形式を定義できます。
Oracle SALTでは、Oracle Tuxedoアプリケーションから外部Webサービスを呼び出すとき、WSDLファイル・コンバータwsdlcvt
が提供されます。このコマンド・ユーティリティを使用して、あらゆるWebサービス操作からOracle Tuxedoサービス・メタデータを定義できます。変換されたサービスはSALTプロキシ・サービスと呼ばれ、通常のOracle Tuxedoサービスとして呼び出すことができます。Oracle SALTプロキシ・サービスも、Oracle Tuxedoサービス・メタデータ・リポジトリにロードする必要があります。
Oracle Tuxedoサービス・メタデータ情報を取得するには、Oracle Tuxedoアプリケーションで起動されるように、Oracle Tuxedoサービス・メタデータ・リポジトリ・システム・サーバー(TMMETADATA)を構成する必要があります。
注: | TMMETADATAは、Oracle SALTゲートウェイGWWSサーバーを使用する前に起動する必要があります。 |
詳細は、 「Oracle Tuxedoサービス・メタデータ・リポジトリ」、および Oracle SALT構成ガイドのOracle SALTのOracle Tuxedoサービス・メタデータ・リポジトリの使用に関する項を参照してください。
Oracle SALTをデプロイするためには、以下の2種類の構成ファイルが必要です。
SALT Webサービス定義ファイル(WSDF)は、XMLベースのファイルであり、SALT Webサービス・コンポーネント(Webサービス・バインディング、Webサービス操作、Webサービス・ポリシー等)を定義するのに使います。 WSDFは、Webサービス定義言語データ・モデルのOracle SALT特有の表現です。 WSDFには、ネイティブと非ネイティブの2つの種類があります。
ネイティブWSDFは手動で作成します。一連のOracle TuxedoサービスおよびそれらをWebサービスとして公開する方法について、WSDFで定義する必要があります。これは、SALT 1.1構成ファイルと同様です。ネイティブWSDFはSALT WSDLジェネレータ( tmwsdlgen
)の入力ファイルです。詳細は、 Oracle SALT構成ガイドを参照してください。
非ネイティブなWSDFは、SALT WSDLコンバータ( wsdlcvt
)を使用して変換された外部WSDLファイルから作成します。基本的に、作成したWSDFを(高度な機能の構成以外の場合)変更する必要はありません。詳細は、次を参照してください。
Oracle SALTデプロイメント・ファイル(SALTDEPLOY)は、XMLベースのファイルであり、Oracle SALT GWWSサーバー・デプロイメント情報をOracle Tuxedoマシンごとに定義するために使用されます。SALTDEPLOYファイルでは、すべての必要なWSDFファイルの一覧を表示します。また、Oracle Tuxedoマシン上にデプロイされているGWWSサーバー数を指定し、それぞれのGWWSサーバーに対する着信および発信Webサービス・インドポイントを関連付けます。SALTDEPLOYファイルには、グローバル・リソース(証明書およびプラグイン・ロード・ライブラリを含む)が設定されているシステム・セクションが含まれています。詳細は、 Oracle SALT構成ガイドのOracle SALTデプロイメント・ファイルの作成に関する項を参照してください。
図1-1では、Oracle SALTデプロイメント・モデルを示します。
Oracle SALTでは、Oracle Tuxedoシステム上に構築されているOracle SALTアプリケーションの様々な部分を管理するために一連のコマンド・ユーティリティが提供されます。これらのユーティリティは、以下のタスクに使用できます。
コマンドライン・ユーティリティを使用してOracle SALTアプリケーションを構成できます。具体的には、XMLエディタを使用してアプリケーションに対して構成ファイル(WSDF
ファイルとSALTDEPLOY
ファイル)を作成および編集した後、wsloadcfというコマンドライン・ユーティリティを使用して、XMLファイル(SALTDEPLOY
ファイルと参照WSDFファイル)をバイナリ・ファイル(SALTCONFIG
)に変換することができます。これで、Oracle SALTゲートウェイ(GWWS)サーバーを起動する準備が整いました。
以下に、アプリケーションを構成するために使用できるOracle SALTコマンドライン・ユーティリティを示します。
各Oracle Tuxedoマシン上で開始されるコマンドです。これを使用すると、アプリケーションのSALTDEPLOY
ファイルおよび参照WSDFファイルをバイナリSALTCONFIG
ファイルにコンパイルできます。wsloadcfコマンドは、SALTCONFIG
環境変数によって定義された場所にバイナリ・ファイルをロードします。
外部WSDL
(Web Services Description Language)ファイルをOracle Tuxedo定義ファイル(WSDF
ファイル、Oracle Tuxedoサービス・メタデータ定義ファイル、FML32フィールド表ファイルおよびXMLスキーマ・ファイル)に変換するコマンドです。生成されたWSDF
ファイルは、特にOracle SALT発信呼出しのために使用される非ネイティブWSDF
ファイルです。
Oracle SALTはOracle Tuxedoフレームワーク上に構築されているため、Oracle Tuxedoで提供されている次のコマンドライン・ユーティリティを使用してOracle SALT固有の項目をOracle Tuxedoアプリケーションに構成する必要があります。
マスターOracle Tuxedoマシン上で実行するコマンドです。これは、Oracle TuxedoアプリケーションUBBCONFIGファイルをバイナリTUXCONFIGファイルにコンパイルするのに使用されます。Oracle SALTゲートウェイ・サーバーを起動するには、GWWSサーバーをUBBCONFIGファイルで定義する必要があります。
Oracle Tuxedoサービス・メタデータ・リポジトリ・システム・サーバー(TMMETADATA)が起動されているマシン上で実行するコマンドです。これは、Oracle Tuxedoサービス・メタデータ定義テキスト・ファイルをバイナリOracle Tuxedoサービス・メタデータ・リポジトリ・ファイルにロードします。Webサービス操作として公開するすべてのOracle Tuxedoの従来のサービスをOracle Tuxedoサービス・メタデータ・リポジトリにロードする必要があります。また、すべてのwsdlcvtで生成されたOracle SALTプロキシ・サービスをOracle Tuxedoサービス・メタデータ・リポジトリにロードする必要があります。
コマンドライン・ユーティリティwsadmin(1)を使用して、Oracle Tuxedoアプリケーション内でOracle SALTゲートウェイ・サーバーの管理機能を実行できます。tmadmin、dmadminおよびqmadminコマンドと同じように、wsadminは、サブコマンドを実行できる対話型のメタコマンドです。
Oracle Tuxedoアプリケーションでは、マシン上でwsadmin(1)を実行して、Oracle Tuxedoアプリケーションに定義されたOracle SALTゲートウェイ・サーバーをモニターおよび管理できます。
SCAコンポジットは、関連付けられた構成ファイル内に記述し、ファイル名の末尾を「.composite」にするのが一般的です。このファイルでは、サービス・コンポーネント定義言語(SCDL)というXMLベースのフォーマットを使用して、コンポジットに含めるコンポーネントを記述したり、コンポーネント間の関係を指定したりします。Oracle SALT SCAをデプロイするためには、少なくとも1つのルート・コンポジット・ファイルを$APPDIR
に配置する必要があります。
.composite)
.componentType)
ルートのコンポジット・ファイルには、1つまたは複数のコンポーネントを構成できます。各コンポーネントのサブディレクトリには、そのコンポーネント独自の.composite
ファイルと.componentType
ファイルが格納されます。
コンポジット内には、ゼロ個以上のコンポーネント要素を含めることができます。 ルートのコンポジット・ファイルは、サーバー環境の$APPDIR
内に格納する必要があります。
リスト 1-1に、2つのコンポーネントからなるルート・コンポジットのサンプルを示します。
<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" name="ECHO.app">
<component name="ECHO">
<implementation.composite name="ECHO" />
</component>
<component name="TOUPPER">
<implementation.composite name="TOUPPER" />
</component>
</composite>
リスト1-1の構成に基づいて、リスト1-2では、暗黙的なディレクトリ階層を示します。
$APPDIR/ECHO.app.composite
$APPDIR/ECHO
$APPDIR/ECHO/ECHO.composite
$APPDIR/ECHO/ECHO.componentType
$APPDIR/TOUPPER
$APPDIR/TOUPPER/TOUPPER.composite
$APPDIR/TOUPPER/TOUPPER.componentType
この例は典型的なサーバー構成です。Oracle Tuxedo SCAクライアントのアプリケーション・トポロジもこれとよく似ており、クライアント・アプリケーションをルートのコンポジット・ファイルのサブディレクトリに配置します。リスト1-3では、ECHO
によって提供されるECHO1
サービスを使用するEchoClient
というクライアントのディレクトリ構造を示します。
$APPDIR/root.composite
$APPDIR/EchoClient/EchoClient.composite
$APPDIR/EchoClient.composite
$APPDIR/EchoClient/EchoClient.dll
$APPDIR/EchoClient/EchoClient.exe
注: | SCAサーバー環境と違い、SCAクライアント環境ではコンポーネント構成ファイルを環境内に配置する必要はありません。 |
コンポーネントとは、SCAアセンブリ内のビジネス機能の基本要素です。これらのコンポーネントをSCAコンポジットによって結合することでビジネス・ソリューションが完成します。コンポーネントは、実装の構成済みインスタンスです。サービスを提供し、サービスを消費します。複数のコンポーネントで同じ実装を使用し、それぞれ違う実装として構成することも可能です。
コンポーネントは、xxx.composite
ファイル内でコンポジットのサブ要素として宣言します。 1つのコンポーネントは、コンポジット要素の子である1つのコンポーネント要素で表現します。 リスト 1-1のコンポジットを使用して、2つのコンポーネント(ECHO
およびTOUPPER
)に情報を含めます。 ECHO
サービス($APPDIR/ECHO/ECHO.composite)
のECHO.composite
の情報をリスト 1-4に示します。
<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
name="ECHO">
<service name="ECHO">
<interface.cpp header="ECHO.h" />
<binding.atmi requires="legacy">
<map target="EchoString1">ECHO1</map>
<map target="EchoString2">ECHO2</map>
</binding.atmi>
<reference>EchoServiceComponent</reference>
</service>
<component name="EchoServiceComponent">
<implementation.cpp library="ECHO" header="ECHOImpl.h" />
</component>
</composite>
ECHO
サービスは、2つのOracle Tuxedoサービス(ECHO1
およびECHO2
)を提供します。ECHO1
は、CPP関数「EchoString1」
を実行します。ECHO2
は、CPP関数「EchoString2」
を実行します。ここでは、$APPDIR/ECHO/ECHOImpl.componentType
および$APPDIR/ECHO/ECHO.so
の存在が暗示されています。リスト1-5では、ECHOImpl.componentType
に含める情報の例を示します。
注: | 一部のUNIXシステムでは、接尾辞が.so.71または.slになります。 |
ECHO.so
(WindowsではECHO.dll
)は、EchoString1
とEchoString2
の実装が格納された共有ライブラリで、サービスの初期化時にメモリーにロードされます。ECHO1
およびECHO2
は、サーバーの初期化時に動的に公開されます。たとえば、これら2つのサービスを提供するOracle TuxedoサーバーがEchoServer
である場合は、Oracle Tuxedo UBBCONFIGファイルにリスト1-6に示すような情報を含める必要があります。
<?xml version="1.0" encoding="UTF-8"?>
<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<service name="ECHO">
<interface.cpp header="ECHO.h"/>
</service>
</componentType>
...
*SERVERS
DEFAULT:
CLOPT="-A"
EchoServer SRVGRP=GROUP1 SRVID=1001
...
TOUPPER
サービスの場合は、ECHO.app.composite
ファイルによって$APPDIR/TOUPPER/TOUPPER.composite
の存在も暗示されます。リスト 1-7に、TOUPPER.composite
ファイルに含める情報の例を示します。
<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
name="TOUPPER">
<service name="TOUPPER">
<interface.cpp header="TOUPPER.h" />
<binding.atmi requires="legacy">
<map target="UpperString1">TOUPPER1</map>
<map target="UpperString2">TOUPPER2</map>
</binding.atmi>
<reference>ToupperServiceComponent</reference>
</service>
<component name="ToupperServiceComponent">
<implementation.cpp library="TOUPPER" header="TOUPPERImpl.h" />
</component>
</composite>
このコンポジット・ファイルでも、$APPDIR/TOUPPER/TOUPPERImpl.componentType
および$APPDIR/TOUPPER/TOUPPER.so
の存在が暗示されています。
注: | Oracle Tuxedo SCAでサポートされる実装タイプは、「cpp」 のみです。 |
Oracle SALTは次のようなWebアプリケーション・サーバー管理ツールを提供します。
詳細は、『Oracle SALTインストレーション・ガイド』と、「Oracle SALTの実行時の管理」および「Oracle SALTアプリケーションの構成」を参照してください。
Oracle SALT SCAでは、Oracle Tuxedoシステム上に構築されているOracle SALT SCAアプリケーションを管理するために一連のコマンドライン・ユーティリティが提供されます。これらのユーティリティのほとんどはアプリケーション開発用ですが、管理用のユーティリティも2つ含まれています。詳細は、Oracle SALTリファレンス・ガイドを参照してください。
scapasswordtool
コマンドライン・ユーティリティを使用すると、Oracle SALT SCAセキュリティを構成できます。ここれにより、SCAクライアント内でOracle Tuxedo認証のパスワードを管理し、パスワードのストア・ファイル(password.store
)に値を設定できます。
Oracle TuxedoセキュリティがAPP_PW
以上に設定されている場合、SCAコンポーネントがOracle Tuxedoベースのサービスを参照すると、SCAコンポーネントではpassword.store
ファイルを検索し、構成コンポジット・ファイル内のパスワードおよびユーザーIDに一致するエントリがあるかどうかがチェックされます。ユーザーIDはプレーン・テキストですが、パスワードは暗号化されています。
ユーザーIDおよびパスワードを追加または作成するには、次の手順に従います。
ユーザーIDおよびパスワードを削除するには、scapasswordtool -i userID -d
と入力します。
ユーザーIDとそれに関連付けられているパスワードが削除されます。
サービスをATMIバインディングで宣言するOracle Tuxedo SCAコンポーネントは、通常のOracle Tuxedoサービスとして管理します。管理者は、既存のOracle Tuxedoコマンド(tmadmin
、tmboot
、tmshutdown
など)を使用して、このようなサーバーの新規インスタンスを起動、モニターまたは停止できます。
管理者が特定のメソッドのアクティビティや可用性をモニターするには、tmadmin
を使用して、SCDLファイルに定義されたATMIバインディング内に宣言されているサービスを選択します。
buildscaserver
コマンドで構築した各SCAサーバーも、scaadmin
コマンドライン・ユーティリティを使用して呼び出すことのできる管理機能を備えています。
Oracle SALTでは、WS-TXトランザクションを管理およびサポートするための一連のコマンド・ユーティリティが提供されます。これらのユーティリティの名前および使用方法は、 Oracle SALTリファレンス・ガイドと同じです。
詳細は、『Oracle Tuxedo相互運用性ガイド』のWX-TXサポートに関する項と、『Oracle SALT構成ガイド』のOracle SALTのWX-TXサポートの構成に関する項を参照してください。