| Interstage Application Server アプリケーション作成ガイド (CORBAサービス編) | 
			目次
			索引
			![]()  
		 | 
	
| 付録E サンプルプログラム(Solaris/Linux) | > E.1 CORBAサービスのサンプルプログラム | 
CORBAサービスが提供するサンプルプログラムについて、その種別と格納されているサブディレクトリを以下に示します。サンプルプログラムの作成・実行の手順は、“実行手順”の各項目(表の「手順」欄)を参照してください。


 “言語”の欄が“C++”の動的スケルトンインタフェースのサンプルは、使用できません。
| 
 種別  | 
 サブディレクトリ (注1)  | 
 言語  | 
 手順  | 
|
| 
 各種データ型  | 
 スレッドモード用  | 
 complex/samplelist.C/data  | 
 C  | 
|
| 
 プロセスモード用  | 
 complex/samplelist.C_nt/data  | 
 C  | 
||
| 
 動的起動インタフェース  | 
 スレッドモード用  | 
 complex/samplelist.C/dii  | 
 C  | 
|
| 
 プロセスモード用  | 
 complex/samplelist.C_nt/dii  | 
 C  | 
||
| 
 動的スケルトンインタフェース  | 
 スレッドモード用  | 
 complex/samplelist.C/dsi  | 
 C  | 
|
| 
 プロセスモード用  | 
 complex/samplelist.C_nt/dsi  | 
 C  | 
||
| 
 ネーミングサービス  | 
 complex/samplelist.C/naming  | 
 C  | 
||
| 
 インタフェースリポジトリ  | 
 irsample  | 
 C,C++  | 
||
| 
 四則演算  | 
 静的インタフェース  | 
 CalcSample/c  | 
 C  | 
|
| 
 動的起動インタフェース  | 
 CalcSample/c_dii  | 
 C  | 
||
| 
 動的スケルトンインタフェース  | 
 CalcSample/c_dsi  | 
 C  | 
||
| 
 POAインタフェース  | 
 スレッドモード用  | 
 POA/C++  | 
 C++  | 
|
| 
 POA/java_1_4  | 
 Java  | 
|||
| 
 プロセスバインド  | 
 complex/samplelist.C++/ssn  | 
 C++  | 
||
| 
 その他  | 
 スレッドモード用  | 
 simple  | 
 C  | 
|
| 
 プロセスモード用  | 
 complex/samplelist.C_nt/simple  | 
 C  | 
||
| 
 soライブラリ化  | 
 simple_so  | 
 C  | 
||
注1) すべてのサンプルプログラムは、以下のディレクトリの配下に格納されています。本節では、サブディレクトリをこのディレクトリからの相対パスで記述します。

 /opt/FSUNod/src/samples (インストールパスはデフォルト)

 /opt/FJSVod/src/samples
注2) Windows(R)クライアント用。
以下に、サンプルプログラムの詳細について、上記の種別ごとに説明します。
各種データ型を操作するサンプルプログラムとその種類について以下に示します。スレッドモード用とプロセスモード用で、同じ内容のものを提供します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 any  | 
 any型のデータを受け渡します。  | 
 
  | 
| 
 2  | 
 array  | 
 array型のデータを受け渡します。  | 
 
  | 
| 
 3  | 
 attribute  | 
 attributeとしてlong,stringのデータを受け渡します。  | 
 
  | 
| 
 4  | 
 context  | 
 context型のデータを受け渡します。  | 
 
  | 
| 
 5  | 
 exception  | 
 ユーザ定義型の例外を受け渡します。  | 
 C,C++のみ  | 
| 
 6  | 
 sequence  | 
 sequence型のデータを受け渡します。  | 
 
  | 
| 
 7  | 
 string  | 
 string型のデータを受け渡します。  | 
 
  | 
| 
 8  | 
 struct  | 
 long型とstring型を要素として持つ構造体型のデータを受け渡します。  | 
 
  | 
| 
 9  | 
 union  | 
 共用体型のデータを受け渡します。  | 
 
  | 
| 
 10  | 
 その他  | 
 基本データ型のデータを受け渡します。  | 
 COBOLのみ  | 
動的起動インタフェースを使用したサンプルプログラムとその種類について以下に示します。スレッドモード用とプロセスモード用で、同じ内容のものを提供します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 dyn1  | 
 long型のデータを受け渡します。  | 
 
  | 
| 
 2  | 
 dyn2  | 
 long型とchar型を要素として持つ構造体型のデータを受け渡します。  | 
 
  | 
| 
 3  | 
 dyn3  | 
 共用体型のデータを受け渡します。  | 
 
  | 
| 
 4  | 
 dii_long  | 
 long型のデータを受け渡します。  | 
 C++のみ  | 
| 
 5  | 
 dii_string  | 
 string型のデータを受け渡します。  | 
 C++のみ  | 
| 
 6  | 
 dii_struct  | 
 構造体型のデータを受け渡します。  | 
 C++のみ  | 
| 
 7  | 
 dii_sequence  | 
 sequence型のデータを受け渡します。  | 
 C++のみ  | 
動的スケルトンインタフェースを使用したサンプルプログラムとその種類について以下に示します。スレッドモード用とプロセスモード用で、同じ内容のものを提供します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 dsi  | 
 long型のデータを受け渡します。  | 
 
  | 
ネーミングサービスを使用するサンプルプログラムとその種類を以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 bind  | 
 ネーミングサービスのbindメソッドを実行します。  | 
 
  | 
| 
 2  | 
 resolve  | 
 ネーミングサービスのresolve メソッドを実行します。  | 
 
  | 
| 
 3  | 
 destroy  | 
 ネーミングサービスのunbind/destroyメソッドを実行します。  | 
 
  | 
| 
 4  | 
 list  | 
 ネーミングサービスのlistメソッドを実行します。  | 
 
  | 
インタフェースリポジトリを使用するサンプルプログラムとその種類を以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 言語  | 
 備考  | 
| 
 1  | 
 csample1  | 
 OperationDefオブジェクト情報を獲得します。  | 
 C  | 
 
  | 
| 
 2  | 
 csample2  | 
 StructDef,AliasDefオブジェクト情報を獲得します。  | 
 C  | 
 
  | 
四則演算を行うサンプルプログラムとその種類について、静的起動・静的スケルトンインタフェースを使用したものを以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 言語  | 
 備考  | 
| 
 1  | 
 c  | 
 ゼロ除算例外を行います。  | 
 C  | 
 
  | 
| 
 2  | 
 c++  | 
 ゼロ除算例外を行います。  | 
 C++  | 
 
  | 
| 
 3  | 
 COBOL  | 
 ゼロ除算例外を行います。  | 
 COBOL  | 
 
  | 
| 
 4  | 
 java  | 
 Webブラウザから入力された値の四則演算を実施して、その結果を表示します。  | 
 Java  | 
 
  | 
| 
 5  | 
 ole  | 
 クライアントから入力された値の四則演算を実施して、その結果を表示します。  | 
 C  | 
 
  | 
動的起動インタフェースを使用したものを以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 言語  | 
 備考  | 
| 
 1  | 
 c_dii  | 
 四則演算を行い、その結果を表示します。  | 
 C  | 
 
  | 
| 
 2  | 
 c++_dii  | 
 四則演算を行い、その結果を表示します。  | 
 C++  | 
 
  | 
動的スケルトンインタフェースを使用したものを以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 言語  | 
 備考  | 
| 
 1  | 
 c_dsi  | 
 ゼロ除算例外を行います。  | 
 C  | 
 
  | 
| 
 2  | 
 c++_dsi  | 
 四則演算を行い、その結果を表示します。  | 
 C++  | 
 
  | 
POAインタフェースを使用したサンプルプログラムとその種類について以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 言語  | 
 備考  | 
| 
 1  | 
 DefaultServant  | 
 デフォルトインスタンスを使用します。  | 
 C++  | 
 
  | 
| 
 2  | 
 Factory-1  | 
 Factoryオブジェクトを使用してクライアントごとに異なるServantオブジェクトを使用する方式です。Factory内でオブジェクトリファレンスおよびインスタンスの作成を行います。  | 
 C++  | 
 
  | 
| 
 3  | 
 Factory-2  | 
 Factoryオブジェクトを使用してクライアントごとに異なるServantオブジェクトを使用する方式です。Factory内でオブジェクトリファレンスの作成を行い、リクエスト受信時にServantObject内でインスタンスを作成します。  | 
 C++  | 
 
  | 
| 
 4  | 
 ServantLocator  | 
 インスタンス管理をユーザの作成するServantManagerオブジェクトに任せる方式です。  | 
 C++  | 
 
  | 
| 
 5  | 
 AdapterActivator-1  | 
 必要なときにPOAオブジェクトを作成します。複数のPOAオブジェクトを実装するアプリケーションに適しています。find_POAメソッドが呼ばれたときにAdapterActivatorが動作します。  | 
 C++  | 
 
  | 
| 
 6  | 
 AdapterActivator-2  | 
 最初のリクエスト受信時にPOAオブジェクトを作成します。複数のPOAオブジェクトを実装するアプリケーションに適しています。最初のリクエスト受信時に動作します。  | 
 C++  | 
 
  | 
| 
 7  | 
 DefaultServant_tie  | 
 デフォルトインスタンスの代理方式を使用します。  | 
 C++  | 
 
  | 
| 
 8  | 
 Factory_1_instance_tie  | 
 クライアントとのコネクション切断時にインスタンス解放を行う方式です。  | 
 C++  | 
 
  | 
プロセスバインドを使用するサンプルプログラムとその種類を以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 言語  | 
 備考  | 
| 
 1  | 
 ssn_sample  | 
 プロセスバインドを行います。  | 
 C++  | 
 
  | 
| 
 2  | 
 ssn_sample2  | 
 プロセスバインドを行い、セションタイムアウトが発生します。  | 
 C++  | 
 
  | 
上記以外のサンプルプログラムについて、スレッドモード用を以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 simple  | 
 加算とその結果を返します。  | 
 
  | 
| 
 2  | 
 simple_cpp  | 
 クライアントから入力された値の累積値を返します。  | 
 
  | 
| 
 3  | 
 java  | 
 Webブラウザから入力された値の加算結果を返します。  | 
 
  | 
| 
 4  | 
 ole  | 
 クライアントから入力された値の大小の比較を実施して、その結果を表示します。  | 
 
  | 
プロセスモード用を以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 simple  | 
 加算とその結果を返します。  | 
 
  | 
| 
 2  | 
 simple_cpp  | 
 クライアントから入力された値の累積値を返します。  | 
 
  | 
ライブラリを作成するものを以下に示します。
| 
 項  | 
 種類  | 
 概要  | 
 備考  | 
| 
 1  | 
 simple_so  | 
 加算とその結果を返します。  | 
 
  | 
| 
 2  | 
 simple_cpp_so  | 
 クライアントから入力された値の累積値を返します。  | 
 
  | 
			目次
			索引
			![]()  
		 |