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

F.1 CORBAアプリケーション(Currentインタフェース使用)(Windows(R)の場合)

  Java言語を使用したクライアントとサーバアプリケーションのサンプルプログラムの使用方法について説明します。サンプルプログラムはInterstageインストールフォルダ\ots\src\samples\simple\javaフォルダに格納されているため、ユーザフォルダに複写し、複写先の環境に合わせて修正して使用してください。

サンプルプログラムの概要

  本サンプルのファイル構成を、以下に示します。本サンプルは、同一マシン内でクライアントアプリケーションとサーバアプリケーションを起動することを前提したサンプルプログラムです。

クライアントプログラムを別マシンで起動する場合は、必要なライブラリなどを移行してください。

No

ファイルの概要

ファイル名

1

Makefile

Makefile

2

Makefile用バッチファイル

Make.bat

3

クライアントアプリケーション用バッチファイル

exec-CL2.bat

4

サーバアプリケーション用バッチファイル

exec-SV2.bat

5

IDLファイル

bankA.idl

6

サーバアプリケーションソース

bankA_s.java

7

SQL文ファイル

UserServant.pc

8

クライアントアプリケーションソース

bankA_c.java

作業手順

1) 環境変数を設定します。

2) XA連携用プログラムを作成します。
  Oracleと連携するJavaサーバアプリケーション用XA連携用プログラムについては、Interstageインストールフォルダ\ots\program\rsc配下に標準で提供していますので、それを利用してください。
  XA連携用プログラムを作成する場合は、otsmkxapgmコマンドはmakeを実行するカレントフォルダから投入します。

(実行例)

  >otsmkxapgm -s xaosw -java -r"/libpath:'C:\oracle\product\10.2.0\db_1\RDBMS\XA' oraxa10.lib" -o otsxaora10g_java.dll<RETURN>


3) Makefileの修正をします。
  Makefileに指定されたソフトウエア製品のインストール先を修正します。

(設定例)

    BDIR              = C:\Program Files\DevStudio\VC
    MCDIR             = C:\Program Files\DevStudio\VC\BIN
    RCDIR             = C:\Program Files\DevStudio\SharedIDE\bin
    OD_HOME           = C:\Interstage\ODWIN
    OTS_HOME          = C:\Interstage\ots
    ORACLE_HOME       = C:\oracle\product\10.2.0\db_1C:\
    JDK               = C:\Interstage\jdk5

4) アプリケーションを作成します。
  Make.batファイルでサーバアプリケーションおよびクライアントアプリケーションをコンパイルします。

(実行例)

    > Make <RETURN>

  なお、Make.batファイルを実行する場合にCORBAサービスおよびインタフェースリポジトリが起動されている必要があります。
  Make.batファイルの処理が完了すると、カレントフォルダ下にbankAフォルダが作成され、bankAフォルダ下にaccountAPOA.java、accountAPOATie.java、_accountAStub.java、accountA.java、accountAHelper.java、accountAHolder.java、accountAOperations.javaが作成されます。

5) クライアントの動作環境がPC(デスクトップタイプ)上の場合、JavaソースをPC上に複写します。
  以下のソースをネットワークコンピュータなどでPC上に複写します。

6) PC上に環境変数を設定します。
  クライアントアプリケーションの動作するPC上に環境変数を設定します。
  環境変数CLASSPATHに以下の情報を設定します。

  また、環境変数PATHにデータベース連携サービスの以下のライブラリが格納されている絶対パスを設定してください。

7) Javaソースをクライアントアプリケーションの動作環境でコンパイルします。
  サーバマシンからクライアントマシンに複写したJavaソースをjavacコンパイラでコンパイルします。以下は、PC上でのコンパイル例です。コンパイルはコマンドプロンプトから実行します。

(実行例)

    C:\tran> javac -d . bankA\*.java  <RETURN>
    C:\tran> javac bankA_c.java   <RETURN>

8) サーバアプリケーション(bankA_s)をCORBAサービスのインプリメンテーションリポジトリに登録します。インプリメンテーションリポジトリへ登録するには、登録する内容を定義ファイル(テキストエディタ)として作成する必要があります。登録例を以下に示します。
  rep_id にはサーバアプリのインプリメンテーションリポジトリID、dataにはRESOURCE:のあとにリソース定義名を指定する必要があります。
  OD_impl_instコマンドは、定義ファイル名を指定して実行します。

(定義ファイル設定例)

        rep_id               = IDL:bankA/accountA:1.0
        type                 = persistent
        mode                 = SYNC_END
        proc_conc_max        = 8
        thr_conc_init        = 1
        ior                  = 1.1
        locale               = UNICODE
        data                 = "RESOURCE:resource1"

(実行例)

    > OD_impl_inst -ax  deffile <RETURN>

  deffileには定義ファイル名を指定します。

9) サーバアプリケーション(bankA_s)をCORBAサービスのネーミングサービスに登録します。

(実行例)

    > OD_or_adm -c  IDL:bankA/accountA:1.0 -n bankA::accountA <RETURN>

10) リソース管理プログラムを作成します。
  otslinkrsc コマンドを使用し、リソース管理プログラムを作成します。
  Interstageインストール先\ots\program\rsc配下にOracle用リソース管理プログラムを標準で提供していますので、それを利用してください。

  リソース管理プログラムを作成するためのシェルとして、データベース連携サービスのインストールフォルダ配下の\src\samples\env\oralinkrsc.batを提供していますので、使用するリソースマネージャ用に修正後、oralinkrsc.batを実行してください。リソース管理プログラムの名前はバッチファイル内の NANE="name" に設定してください。( 例. NAME="run_rsc" )

(実行例)

    >  oralinkrsc <RETURN>

11) リソース定義ファイルを作成します。
  リソース定義ファイルはテキストエディタで作成します。
  OPENINFO には、データベースのユーザ名、パスワードを指定します。(例. orauser/dbuser など)

NAMEには、インプリメンテーションリポジトリに登録する際にdata行で指定した”RESOURCE:”のあとの名前を記述してください。

(設定例)

NAME=resource1
RMNAME=Oracle_XA
OPENINFO=Oracle_XA+Acc=P/orauser/dbuser+SesTm=0
CLOSEINFO=

12) リソース管理プログラムをCORBAサービスのインプリメンテーションリポジトリに登録します。
  リソース管理プログラムの登録はotssetrscコマンドにより行います。

(実行例)

    > otssetrsc  -a -rf c:\user\ots\run_rscdef  <RETURN>

  -rfには、リソース定義ファイル名をフルパスで指定してください。

13) データベースにテーブルを作成します。
  sqlplusコマンドでテーブルを作成します。ここでは、テーブル作成のバッチファイル(データベース連携サービスのインストール先フォルダ配下\src\samples\simple\c\a_account.sql)を使用し作成する例を示します。

(実行例)

    > sqlplus orauser/dbuser @a_account.sql <RETURN>

  作成されたテーブルの内容を確認するには、以下のようにsqlplusコマンドを使用します。

(実行例)

    > sqlplus orauser/dbuser <RETURN>
    SQL> select * from a_account; <RETURN>
     ACCOUNTNO NAME BALANCE
     ------------------- ---------------- ---------------------
             1 SEAN 11111
             2 LEHR 22222
             3 JUDITH 33333
             4 FRANCIS 44444
             5 ALASTAIR 55555
             6 AREX 66666
             7 MOIRA 77777

14) OTSシステム、リソース管理プログラムおよびサーバアプリケーションを起動します。

(実行例)

    > otsstart   <RETURN>
    > otsstartrsc  otsstartrsc -pg C:\user\ots\rsc\run_rsc.exe -n resource1  <RETURN>
    > exec-SV2 <RETURN>

15) クライアントアプリケーションを起動します。

(実行例)

    C:\tran> exec-CL2 <RETURN>

16) クライアントアプリケーションから入力を促してくるので実行する。

            ----- What's request number -----
            1:begin      2:commit
            3:rollback   4:rollback_only
            5:get_status 6:get_transaction_name
            7:settimeout 8:Call ServerApplication
            0:exit

 1 <RETURN>      [1を入力するとbeginが実行される。]

 8 <RETURN>      [8を入力するとサーバのメソッドが実行される。]
            ** ServerApplication **
            Please input employee number
 5 <RETURN>     [番号を入力]
            How much do you deposit ?
 200000 <RETURN>[番号5の社員に給与を入力]
 2 <RETURN>     [2を入力するとcommitが実行される]
 0 <RETURN>     [クライアントアプリケーションの終了]