(7) 各種APIのサンプルプログラムの実行例を説明します。
種別 | ディレクトリ (注1) | 備考 |
---|---|---|
$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 | プロセスモード用 |
注1)
ここで使用している環境変数は以下のとおりです。なお、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言語)”のポイントを参照してください。