Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/Extension for .NET Framework 使用の手引


1.3.2 RPCインタフェース

OpenTP1 for .NET FrameworkのUAPから,サービス要求をする場合のRPCインタフェースには次の3種類があります。

〈この項の構成〉

(1) RPCインタフェースの種類

RPCインタフェースの種類を次に示します。

(a) .NETインタフェース定義を使用したRPC

.NETインタフェース定義から運用コマンドでサーバスタブ,およびクライアントスタブを生成して使用します。これによって,.NET Frameworkのクラスのメソッド呼び出しと同様の形式でRPCが行えます。また,.NET Frameworkのデータ型をパラメタや戻り値として送受信できます。

OpenTP1 for .NET Frameworkを使用したクライアント/サーバシステムの場合に適しています。

.NETインタフェース定義を使用したRPCの概要を次の図に示します。

図1‒6 .NETインタフェース定義を使用したRPCの概要

[図データ]

注※1

クライアントUAPには次のUAPが該当します。

  • SPP.NET

  • SUP.NET

  • CUP.NET(TP1/Connector for .NET Frameworkを使用するアプリケーションを含みます)

注※2

サービス定義から生成されるクライアントスタブとは異なるものです。

注※3

スタブがRPCデータの文字コードの自動変換,およびエンディアンの自動識別をします。

(b) サービス定義(カスタムレコード)を使用したRPC

SPP.NETまたはSPPの入出力データ形式とサービス名をサービス定義として定義します。

このサービス定義から運用コマンドでカスタムレコードとクライアントスタブを生成して使用します。

クライアント側では.NET Frameworkのデータ型で入出力データの設定や参照ができます。また,サーバとのプラットフォームやプログラム言語,文字コードなどの違いをユーザが意識することなくアプリケーションを作成できます(運用コマンドでスタブを生成する際に,文字コードやエンディアンなどを指定します)。

OpenTP1 for .NET Framework環境のクライアントから,SPPにアクセスする場合などに適しています。

サービス定義(カスタムレコード)を使用したRPCの概要を次の図に示します。

図1‒7 サービス定義(カスタムレコード)を使用したRPCの概要

[図データ]

注※1

クライアントUAPには次のUAPが該当します。

  • SPP.NET

  • SUP.NET

  • CUP.NET(TP1/Connector for .NET Frameworkを使用するアプリケーションを含みます)

注※2

.NETインタフェース定義から生成されるクライアントスタブとは異なるものです。

注※3

スタブがRPCデータの文字コードの自動変換,およびエンディアンの自動識別をします。

(c) バイナリデータ(インデクスドレコード)を使用したRPC 

バイナリデータ(バイト配列型)の集合を入力用レコード,および出力用レコードに設定して使用します。

TP1/Connector for .NET Frameworkで,バイナリデータを使用したRPCを実行する場合は,インデクスドレコードを使用します。

バイナリデータ(インデクスドレコード)を使用したRPCの場合,クライアントとサーバのプラットフォームやプログラム言語,文字コードなどの違いをユーザが意識する必要があります。

OpenTP1 for .NET Framework環境以外のクライアントからSPP.NETにアクセスする場合などに適しています。

バイナリデータ(インデクスドレコード)を使用したRPCの概要を次の図に示します。

図1‒8 バイナリデータ(インデクスドレコード)を使用したRPCの概要

[図データ]

注※

クライアントUAPには次のUAPが該当します。

  • SPP.NET

  • SPP

  • SUP.NET

  • SUP

  • CUP.NET(TP1/Connector for .NET Frameworkを使用するアプリケーションを含みます)

  • CUP