(7) 各種APIのサンプルプログラムの実行例を説明します。
種別 | ディレクトリ(注) | 備考 |
---|---|---|
$OD_SAMPLES/complex/samplelist.C/api/net_disconnect | スレッドモード用 | |
$OD_SAMPLES/complex/samplelist.C_nt/api/net_disconnect | プロセスモード用 | |
$OD_SAMPLES/complex/samplelist.C/api/set_client_request_timer | スレッドモード用 | |
$OD_SAMPLES/complex/samplelist.C_nt/api/set_client_request_timer | プロセスモード用 | |
$OD_SAMPLES/complex/samplelist.C/api/string_to_object | スレッドモード用 | |
$OD_SAMPLES/complex/samplelist.C_nt/api/string_to_object | プロセスモード用 |
注)
ここで使用している環境変数は、以下です(Interstageのインストールパス:デフォルト)。
環境変数 | 値 | 備考 |
---|---|---|
OD_SAMPLES | /opt/FSUNod/src/samples | |
/opt/FJSVod/src/samples |
<作成>
C言語/C++言語の場合は、“D.4.1.1 静的インタフェース/各種データ型(C言語)”の<作成>を参照してください。
Java言語の場合は、“D.4.1.3 静的インタフェース/各種データ型(Java言語)”の<作成>を参照してください。
<実行>
作成したアプリケーションの実行手順を以下に示します。
なお、Java言語の場合は、<作成>の“環境変数の設定”を行った端末で実施してください。
SSLの環境設定を行います。詳細については、“セキュリティシステム運用ガイド”の“CORBAサービスでSSLを利用する方法”を参照してください。
registar.shを実行して、サンプルプログラムを実行するために必要なインプリメンテーションリポジトリIDとオブジェクトリファレンスを登録します。
register.sh
exec-SV.shを実行して、サーバアプリケーションを起動します。
exec-SV.sh &
odprtcurparamコマンドを使用して、疎通前のコネクション数(IIOP_resp_conのvalueの値)を確認します(OD_HOME:CORBAサービスのインストールパス)。
$OD_HOME/bin/odprtcurparam
exec-CL.shを実行してクライアントアプリケーションを起動します。
exec-CL.sh
サーバ側のコマンドプロンプトにおいてodprtcurparamコマンドを使用して、疎通後のコネクション数(IIOP_resp_conのvalueの値)が疎通前より1だけ増加していることを確認します。
$OD_HOME/bin/odprtcurparam
クライアント側のコマンドプロンプトにおいてEnterキーを押下し、クライアントアプリケーションを終了します。
stop-SV.shを実行して、サーバアプリケーションを停止します。
stop-SV.sh
unregister.shを実行して、不要となったサンプルプログラムのインプリメンテーションリポジトリIDとオブジェクトリファレンスを削除します。
unregister.sh
ポイント
クライアントアプリケーションにおいて、CORBA_ORB_net_disconnect(C言語)/CORBA::ORB::net_disconnect(C++言語)/com.fujitsu.ObjectDirector.CORBA.ORB.net_disconnect(Java言語)をコメントアウトした上で作成/実行することにより、これらのAPIが通信資源(コネクション数)に与える影響を確認できます。
該当のAPIをコメントアウトしたアプリケーションでは通信資源が解放されないため、“6. コネクション数の確認(疎通後)”においてコネクション数は疎通前より2だけ増加します。
net_disconnectのサーバアプリケーションは、ワークユニット上で動作させることも可能です。
サーバアプリケーションをワークユニット上で動作させる場合、C言語/C++言語については“D.4.1.1 静的インタフェース/各種データ型(C言語)”のポイントを参照してください。Java言語については“D.4.1.3 静的インタフェース/各種データ型(Java言語)”のポイントを参照してください。
注意
サーバ側無通信監視機能/クライアント側無通信監視機能の影響により、“6. コネクション数の確認(疎通後)”において期待する結果が得られないことがあります。この場合、再度アプリケーションを実行してください。
<作成>
C言語/C++言語の場合は、“D.4.1.1 静的インタフェース/各種データ型(C言語)”の<作成>を参照してください。
Java言語の場合は、“D.4.1.3 静的インタフェース/各種データ型(Java言語)”の<作成>を参照してください。
<実行>
“D.4.1.1 静的インタフェース/各種データ型(C言語)”の<実行>を参照してください。
なお、Java言語の場合は<作成>の“環境変数の設定”を実施した端末で実施してください。
ポイント
set_client_request_timerのサーバアプリケーションは、ワークユニット上で動作させることも可能です。
サーバアプリケーションをワークユニット上で動作させる場合、C言語/C++言語については“D.4.1.1 静的インタフェース/各種データ型(C言語)”のポイントを参照してください。Java言語については“D.4.1.3 静的インタフェース/各種データ型(Java言語)”のポイントを参照してください。
<作成>
C言語/C++言語の場合は、“D.4.1.1 静的インタフェース/各種データ型(C言語)”の<作成>を参照してください。
Java言語の場合は、“D.4.1.3 静的インタフェース/各種データ型(Java言語)”の<作成>を参照してください。
<実行>
作成したアプリケーションの実行手順を以下に示します。
なお、Java言語の場合は、<作成>の“環境変数の設定”を実施した端末で実施してください。
registar.shを実行して、サンプルプログラムを実行するために必要なインプリメンテーションリポジトリIDの登録と、オブジェクトリファレンスのファイル出力を実行します。
register.sh
exec-SV.shを実行して、サーバアプリケーションを起動します。
exec-SV.sh &
exec-CL.shを実行してクライアントアプリケーションを起動し、出力結果を確認します。なお、必要に応じて、Interstageのインストール環境にあわせてexec-CL.shを修正してください。
exec-CL.sh
stop-SV.shを実行して、サーバアプリケーションを停止します。
stop-SV.sh
unregister.shを実行して、不要となったサンプルプログラムのインプリメンテーションリポジトリIDとオブジェクトリファレンスを削除します。
unregister.sh
ポイント
string_to_objectのサーバアプリケーションは、ワークユニット上で動作させることも可能です。
サーバアプリケーションをワークユニット上で動作させる場合、C言語/C++言語については“D.4.1.1 静的インタフェース/各種データ型(C言語)”のポイントを参照してください。Java言語については“D.4.1.3 静的インタフェース/各種データ型(Java言語)”のポイントを参照してください。