ページの先頭行へ戻る
Interstage Application Server アプリケーション作成ガイド(CORBAサービス編)
Interstage

D.4.7 各種API

(7) 各種APIのサンプルプログラムの実行例を説明します。

種別

ディレクトリ(注)

備考

net_disconnect

$OD_SAMPLES/complex/samplelist.C/api/net_disconnect
$OD_SAMPLES/complex/samplelist.C++/api/net_disconnect
$OD_SAMPLES/complex/samplelist.Java/api/net_disconnect

スレッドモード用

$OD_SAMPLES/complex/samplelist.C_nt/api/net_disconnect
$OD_SAMPLES/complex/samplelist.C++_nt/api/net_disconnect

プロセスモード用

set_client_request_timer

$OD_SAMPLES/complex/samplelist.C/api/set_client_request_timer
$OD_SAMPLES/complex/samplelist.C++/api/set_client_request_timer
$OD_SAMPLES/complex/samplelist.Java/api/set_client_request_timer

スレッドモード用

$OD_SAMPLES/complex/samplelist.C_nt/api/set_client_request_timer
$OD_SAMPLES/complex/samplelist.C++_nt/api/set_client_request_timer

プロセスモード用

string_to_object

$OD_SAMPLES/complex/samplelist.C/api/string_to_object
$OD_SAMPLES/complex/samplelist.C++/api/string_to_object
$OD_SAMPLES/complex/samplelist.Java/api/string_to_object

スレッドモード用

$OD_SAMPLES/complex/samplelist.C_nt/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


D.4.7.1 net_disconnect

<作成>

C言語/C++言語の場合は、“D.4.1.1 静的インタフェース/各種データ型(C言語)”の<作成>を参照してください。
Java言語の場合は、“D.4.1.3 静的インタフェース/各種データ型(Java言語)”の<作成>を参照してください。


<実行>

作成したアプリケーションの実行手順を以下に示します。
なお、Java言語の場合は、<作成>の“環境変数の設定”を行った端末で実施してください。


1. SSL環境設定

SSLの環境設定を行います。詳細については、“セキュリティシステム運用ガイド”の“CORBAサービスでSSLを利用する方法”を参照してください。


2. サーバアプリケーションの登録

registar.shを実行して、サンプルプログラムを実行するために必要なインプリメンテーションリポジトリIDとオブジェクトリファレンスを登録します。

register.sh

3. サーバアプリケーションの起動

exec-SV.shを実行して、サーバアプリケーションを起動します。

exec-SV.sh &

4. コネクション数の確認(疎通前)

odprtcurparamコマンドを使用して、疎通前のコネクション数(IIOP_resp_conのvalueの値)を確認します(OD_HOME:CORBAサービスのインストールパス)。

$OD_HOME/bin/odprtcurparam

5. クライアントアプリケーションの起動

exec-CL.shを実行してクライアントアプリケーションを起動します。

exec-CL.sh

6. コネクション数の確認(疎通後)

サーバ側のコマンドプロンプトにおいてodprtcurparamコマンドを使用して、疎通後のコネクション数(IIOP_resp_conのvalueの値)が疎通前より1だけ増加していることを確認します。

$OD_HOME/bin/odprtcurparam

7. クライアントアプリケーションの終了

クライアント側のコマンドプロンプトにおいてEnterキーを押下し、クライアントアプリケーションを終了します。


8. サーバアプリケーションの終了

stop-SV.shを実行して、サーバアプリケーションを停止します。

stop-SV.sh

9. サーバアプリケーションの登録削除

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だけ増加します。

注意

サーバ側無通信監視機能/クライアント側無通信監視機能の影響により、“6. コネクション数の確認(疎通後)”において期待する結果が得られないことがあります。この場合、再度アプリケーションを実行してください。


D.4.7.2 set_client_request_timer

<作成>

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言語)”のポイントを参照してください。


D.4.7.3 string_to_object

<作成>

C言語/C++言語の場合は、“D.4.1.1 静的インタフェース/各種データ型(C言語)”の<作成>を参照してください。
Java言語の場合は、“D.4.1.3 静的インタフェース/各種データ型(Java言語)”の<作成>を参照してください。


<実行>

作成したアプリケーションの実行手順を以下に示します。
なお、Java言語の場合は、<作成>の“環境変数の設定”を実施した端末で実施してください。


1. サーバアプリケーションの登録

registar.shを実行して、サンプルプログラムを実行するために必要なインプリメンテーションリポジトリIDの登録と、オブジェクトリファレンスのファイル出力を実行します。

register.sh

2. サーバアプリケーションの起動

exec-SV.shを実行して、サーバアプリケーションを起動します。

exec-SV.sh &

3. クライアントアプリケーションの起動

exec-CL.shを実行してクライアントアプリケーションを起動し、出力結果を確認します。なお、必要に応じて、Interstageのインストール環境にあわせてexec-CL.shを修正してください。

exec-CL.sh

4. サーバアプリケーションの終了

stop-SV.shを実行して、サーバアプリケーションを停止します。

stop-SV.sh

5. サーバアプリケーションの登録削除

unregister.shを実行して、不要となったサンプルプログラムのインプリメンテーションリポジトリIDとオブジェクトリファレンスを削除します。

unregister.sh

ポイント

string_to_objectのサーバアプリケーションは、ワークユニット上で動作させることも可能です。
サーバアプリケーションをワークユニット上で動作させる場合、C言語/C++言語については“D.4.1.1 静的インタフェース/各種データ型(C言語)”のポイントを参照してください。Java言語については“D.4.1.3 静的インタフェース/各種データ型(Java言語)”のポイントを参照してください。