C++版 R5形式の簡単なアプリケーションです。
サーバの実装とインタフェース部分を一つのコンポーネントにまとめています。
- サーバのソースコードやmakeファイル(Makefile.mak)はsamples/corba/corbaap/cpp/v5type/svに、クライアントのソースコードやmakeファイル(Makefile.mak)はsamples/corba/corbaap/cpp/v5type/clにあります。
- また、ビルド用のbatファイル("sample_setting_and_building.bat")はsamples/corba/corbaap/cpp/v5typeにあります。
- "sample_setting_and_building.bat"
をエディタで開いて、自分の環境に合わせて編集して保存してください。
- "Makefile.mak"を
をエディタで開いて、「LINK32_FLAGS=nospxxx.lib nWOBSxx.lib nOrbWxxxxx.lib」部分のリンクするファイル名を使用するコンパイラに合わせて編集してください。
リンクするファイルは使用するコンパイラによって異なるため、
[アプリケーション開発 > CORBAアプリケーション > WebOTX AS CORBAアプリケーション > C++言語を用いたサーバアプリケーションの作成]
の「サーバント(実装部分)のコーディング(C++)」項を参照して確認してください。サーバ側、クライアント側ともに編集が必要です。
- "sample_setting_and_building.bat"を
実行してください。しばらくするとビルドが完了します。
- 使用するファイルと使い方については後述の説明をご覧ください。
- アプリケーションは以下のIDLをベースに作成されています。
loopback.idl:
module sample
{
interface LoopBackSample
{
long LoopBack(in string inputChar, out string outputChar);
long LowerCase(in string inputChar, out string outputChar);
long UpperCase(in string inputChar, out string outputChar);
};
};
- クライアントAPの起動はclディレクトリ配下にある "run.bat" で起動できます。
その際、参照する名前サーバと名前コンテキスト名は以下のようになっています。
corbaname://*#NEC/WebOTX/WO_Default/sample/LoopBackSample/1
この値は運用管理ツールの初期設定に従っています。名前サーバの参照先はローカルホストになっています。
参照する名前サーバの設定を変更した場合は、クライアントAPの起動についてを参考にクライアントアプリケーションの引数に変更したURLを記述してください。
- R5形式はV5.1以降の作成方式に従って作成したアプリケーションです。
運用管理ツールへの登録(配備するプロセスグループ作成時のバージョン指定)は「バージョン: 9」として登録してください。
- WebOTX独自のIDLコンパイラを使用せず、ObjectBroker提供のIDLコンパイラを
使用する方法を推奨しています。この場合、"WO_Factory_" というインタフェースの自動生成は行われません。
- 運用管理ツールにてドメインに接続します。デフォルトドメイン名は "domain1" です。
- アプリケーショングループを新規に作成します。名前は任意です。
運用管理コマンドを用いる場合、ドメインにログインした状態で以下のようにすることで作成可能です。
otxadmin > create-apg [アプリケーショングループ名]
- プロセスグループを新規に作成します。
[WebOTXバージョン] : 9
[アプリケーションの種類]: アプリケーションビルド時に使用したコンパイラ(CORBA VC++ 2008/CORBA VC++ 2010/CORBA VC++ 2012/CORBA VC++ 2013/CORBA VC++ 2015/CORBA VC++ 2017/CORBA VC++ 2019)
運用管理コマンドを用いる場合、ドメインにログインした状態で以下のようにすることで作成可能です。
otxadmin > create-pg --apgroup [アプリケーショングループ名] --kind [アプリケーションの種類(CORBA VC++ 2008ならvc2008)] --version 9 [プロセスグループ名]
- [ドメイン名]-[アプリケーション]-[コンポーネントの配備]から以下を指定してプロセスグループにサーバコンポーネントファイルを配備します。
[コンポーネントタイプ] : CORBAアプリケーション
[ファイル] : cpp\v5type\sv\Release\loopback_csv.cpk
[アプリケーショングループ]: 作成したアプリケーショングループの名前
[プロセスグループ] : 作成したプロセスグループの名前
運用管理コマンドを用いる場合、ドメインにログインした状態で以下のようにすることで配備可能です。
otxadmin > deploy --apgroup [アプリケーショングループ名] --pgroup [プロセスグループ名] <マニュアルインストールディレクトリ>\samples\corba\cobaap\cpp\v5type\sv\Release\loopback_csv.cpk
- ファクトリインタフェースのIORを名前サーバに登録します。
運用管理ツールにてコンポーネントファイル配下にある
"sample-LoopBackSample"
を選択して、マウスの右ボタンを押して[名前サーバへ登録]を実行してください。
運用管理コマンドを用いる場合、ドメインにログインした状態で以下のようにすることで登録可能です。
otxadmin > invoke applications.corba-applications.loopback_csv.loopback\.dll.sample-LoopBackSample.bindIor corbaname://*#NEC/WebOTX/WO_Default/sample/LoopBackSample/1
- サーバAPを起動します。
運用管理ツールにてアプリケーショングループを選択し、マウスの右ボタン
を押して[アプリケーショングループの起動]を実行してください。
運用管理コマンドを用いる場合、ドメインにログインした状態で以下のようにすることで起動可能です。
otxadmin > start-apg [アプリケーショングループ名]
run.bat で起動します。オプションで呼び出し方を変更できます。詳しい動作についてはソースをご確認ください。
loopbackcl -type {0|1|2} [-count count] [-length len] [-url url]
type: 0または1または2のいずれかを指定します。
0=LoopBack()を呼び出します
1=LowerCase()を呼び出します
2=UpperCase()を呼び出します
count: 呼び出し回数を指定します。初期値は5回です。
length: typeで指定したオペレーションの入力電文長をしています。
初期値は1024です。
url: サーバインタフェースのIORが格納されているURLをcorbaname URL形式で指定します。
このURL形式の詳しい説明はオンラインマニュアルをご覧ください。
初期値は、"corbaname::127.0.0.1#NEC/WebOTX/WO_Default/sample/LoopBackSample/1"
になります。