![]() ![]() ![]() ![]() ![]() ![]() ![]() |
次の項では、Windowsデスクトップ・システムまたはWindows ServerシステムのMicrosoft Visual C++統合開発環境(msdev
)でATMIアプリケーションのクライアント/サーバーを開発する方法について説明します。
Windowsデスクトップ・システムには、Oracle Tuxedo ATMIクライアント・コンポーネント(サーバー・コンポーネントは別)をインストールできるため、これらのプラットフォームでは、Microsoft Visual C++ IDEでATMIアプリケーション・クライアントのみを開発できます。これに対して、Windows ServerにはOracle Tuxedo ATMIクライアント・コンポーネントとサーバー・コンポーネントの両方をインストールできるため、Windows Serverプラットフォームでは、Microsoft Visual C++.Net IDEを使用して、ATMIアプリケーションのクライアントとサーバーの両方を開発できます。
Oracle Tuxedo ATMIは、Microsoft Visual C++.Net IDE (msdev
)に統合されますが、統合できない場合はmsdev
の機能がエミュレートされます。この統合により、64ビットおよび32ビットのWindowsオペレーティング・システムでOracle Tuxedo ATMIアプリケーションを簡単に開発できます。
Oracle Tuxedo ATMIのサービス・リクエストの作成、リクエストの送信、会話型接続の設定、および応答の受信に必要なコーディングは、基本的にはUNIX環境およびWindows Server環境のどちらでも同じです。
BuildTuxedo
は、msdev
ビルド環境と密接に統合されている1つの開発ツールで、開発者は、buildserver
、buildclient
およびbuildclt
コマンドのかわりにOracle Tuxedoアプリケーションの開発に使用できます。(もちろん、これらのコマンドを利用してもかまいません。)BuildTuxedo
システムは、現在サポートされているすべてのWindows環境でスムーズに作動します。
Windows Serverシステムではbuildclient
およびbuildserver
コマンドの両方が使用できます。しかし、Windowsデスクトップ・システムではbuildclient
コマンドのみが使用でき、これは、Windowsデスクトップ・システムではTuxedoアプリケーション・クライアントのみをビルドできることを意味します。buildコマンドの詳細は、『Oracle Tuxedoコマンド・リファレンス』のbuildclient (1)およびbuildserver (1)を参照してください。
buildclient
コマンドとbuildserver
コマンドのオプションは、次の表に示すように、統合開発環境と統合開発環境以外の環境で異なる働きをします。
統合開発環境でビルド環境を変更するには、次の手順に従います。
注: | CCおよびCFLAGSは不要になりました。 |
ライブラリを指定して統合開発環境にパスを含めるには、次の手順に従います。
BuildTuxedo
をMSDEVの「Tools」メニューに追加するには、次の手順に従います。
msdev
)のグラフィカル・ユーザー・インタフェース(GUI)で、「Tools」&BuildTuxedo
」と入力します。注: | 文字キーをホット・キーとして有効にするには、該当の文字の前にアンパサンド(&)を追加します。 |
$(ProjectDir)
)を選択します。注: | 項目を変更するには、その項目を強調表示してから上書きします。項目を移動するには、その項目を強調表示してから、「Menu Content」ボックスの上部にある上矢印または下矢印を選択します。 |
これで、BuildTuxedo
がMSDEVの「Tools」メニューに表示されます。
BuildTuxedo
では、Oracle Tuxedo ATMIアプリケーションごとに使用される個別のプロジェクト・ファイルをカレント・ディレクトリに保持します。BuildTuxedo
が起動すると、カレント・ディレクトリ内にある有効なプロジェクト・ファイルが検索されます。見つかった場合は、ダイアログ・ボックス内の値がこのファイル内の値に設定され、ダイアログが表示されます。タイトル・バーには次の情報が表示されます。
BuildTuxedo
project_name
BuildTuxedo
プロジェクトはカレント・ディレクトリ内のmsdev
プロジェクトに密接に関連付けられているため、BuildTuxedo
では、次の2つのファイルも検索されます。
BuildTuxedo
でこれらのファイルが見つからない場合は、警告が表示されるか、起動できなくなります(あるいは両方)。ディレクトリに複数のBuildTuxedo
プロジェクト・ファイル、複数のmsdev
プロジェクト・ファイル、またはmakeファイルがある場合は、該当のターゲット名を含むメニュー項目が「System」メニューに追加されます。
現行のプロジェクト・ファイルを保存するには、「OK」または「Apply」を選択します。プロジェクト・ファイルまたはOracle Tuxedoで保持されるファイルに加えた変更内容を取り消すには、「Cancel」または[Esc]をクリックします。
IDEでOracle Tuxedo ATMIアプリケーションをビルドする前に、次の基本パラメータを環境に設定する必要があります。
この情報を指定するには、msdev
のGUIで、「BuildTuxedo
project_name」ダイアログ・ボックスにアクセスします。
ビルド・タイプ、ヘッダー・タイプおよびファイル名を指定するには、次の手順に従います。
注: | Windowsデスクトップのユーザーが選択できるのは、ワークステーション・クライアントのみです。 |
「Initialization」オプションおよび「Cleanup」オプションでは、有効な関数名を指定して、デフォルトのinit/exit関数をオーバーライドできます。「Entry Point」オプションでは、BuildTuxedo
で生成される関数の名前を指定できます。関数名を指定しておくと、アプリケーションのどこからでもこの関数を呼び出すことができます。
ヘッダー・ファイルでは、BuildTuxedo
によって必要なPRAGMA文が追加され、現在のOracle Tuxedo ATMIプロジェクトが正しく作成されます。BuildTuxedo
では、「Build」ページの「Header File」フィールドに指定されたファイルが存在する場合に、このファイルを開き、ファイルがない場合は、新しいファイルを作成します。次の行で始まり、
//Begin Tuxedo Section*****DO NOT EDIT*****
//End Tuxedo Section
ヘッダー・ファイルでpragma文が書き込まれる部分を指定します。この部分は、BuildTuxedo
によって管理されます。ファイル内のこのセクションがBuildTuxedo
で見つからない場合は、ヘッダー・ファイルの最後に追加されます。これ以外のファイル内のテキストは変更されないため、ヘッダー・ファイルにはstdafx.h
を指定できます。
注: | 新しいプロジェクトを作成して「OK」または「Apply」を選択した場合は、MSDEVの「Insert」メニューの「Files into Project」を選択する必要があります。次に、BuildTuxedo で生成されたファイルを現在のプロジェクトに追加します。この操作は、新しいプロジェクトの場合、またはC/C++出力ファイルの名前を変更する場合にのみ実行します。 |
「Services」タブを選択すると、「サービス」ページが表示され、ここでは、関数名とサービス名を指定します。
「サービス」ページでは、サービス・ディスパッチ表の管理に使用される2つのリストが表示されます。
注: | リストを上または下にスクロールするには、矢印キーを使用します。 |
通常、サービスと、そのサービスを実行する関数は同じ名前で表します。たとえば、関数x
ではサービスx
を実行します。実行するサービスと異なる名前の関数もあります。たとえば、関数abc
ではサービスx
、y
およびz
を実行します。別のケースでは、実行時までサービス名がわからない場合もあります。
サーバーを構築する場合は、サービスに関連する関数を指定する必要があります。サービスに関連する関数には、サービス、適切なプロトタイプ、Cリンク、無効な戻り値、およびTPSVCINFO
ポインタ・パラメータを1つ指定する必要があります。サービス名をマッピングする関数を指定するには、この関数を「Function Name」リストに追加する必要があります。この情報は、サービス・ディスパッチ表に必要です。
注: | buildserver(1)コマンドを使用している場合は、-s オプションを指定すると、この情報が提供されます。-s オプションの詳細は、『C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』または『COBOLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』を参照してください。 |
「Function Names」リストに名前を追加または編集するには、次の手順に従います。
注: | 「Tuxedo Resource Manager」フィールドには、システムで利用可能なOracle Tuxedoのリソース・マネージャのリストが用意されており、%TUXDIR%\udataobj\RM ファイルで定義されています。ファイルが存在しない場合は、デフォルト(NONE)が表示されます。 |
次の手順は、プロジェクトでデバッグ構成を使用してATMIサーバー・アプリケーションをビルドした場合にのみ使用してください。
まだ起動していないサーバーをデバッグするには、次の手順に従います。
tmboot -n -d 1 -s
servername
」と入力し、servername
を起動するためにtmboot(1)で使用されるコマンド行オプションを表示します。tmboot -M
コマンドを実行し、BBLを起動します。(必要であれば、さらにアプリケーション・サーバーまたはマシンを起動します。)msdev
で、「Project」注: | Oracle Tuxedoのライブラリにはデバッグ情報が組み込まれておらず、ソース・コードも提供されていないため、直接Oracle Tuxedoのコードにアクセスすることはできません。 |
tmshutdown
」と入力します。警告: | Oracle Tuxedoシステムがサーバーを再起動しようとする場合があるため、「Debug」![]() |
注: | 実行中のサーバーをデバッグするには、Windowsのコマンド・プロンプトで「msdev -p nnn 」と入力し、nnn をサーバーのプロセスID (10進数)で置き換えます。 |
Microsoft Visual C++ IDE GUIのかわりにコマンド行オプションを使用して、Oracle Tuxedo ATMIアプリケーションを開発する必要がある場合は、buildserver(1)コマンドおよびbuildclient(1)コマンドを使用します。この場合は、Oracle Tuxedo ATMIアプリケーションのビルドに必要なコンパイラとリンク・オプションを指定します。これらのツールの使用方法の詳細は、次のドキュメントを参照してください。
buildserver
またはbuildclient
を使用してATMIアプリケーションのデバッグ・バージョンをビルドするには、/Zi
および/Od
オプションを指定して、すべてのソース・ファイルをコンパイルする必要があります。/Zi
オプションでは、デバッグを有効にし、/Od
オプションでは、最適化を無効にします。また、_DEBUG
プロプロセッサ・ディレクティブの定義が必要になる場合もあります。このプロセスを完了するには、リンク・オプションを次のように指定します。
-l"/link/debug:full /debugtype:both"
Oracle Tuxedo ATMIの詳細は、次のドキュメントを参照してください。
![]() ![]() ![]() |