サーバアプリケーションを作成する場合に必要な環境設定を以下に示します。必要に応じて設定してください。
環境変数CLASSPATHの設定
環境変数CLASSPATHの設定方法については、“7.1.1 クライアントアプリケーションの作成方法”の“環境変数CLASSPATHの設定”を参照してください。
ORBの指定
ORBの指定方法については、“7.1.1 クライアントアプリケーションの作成方法”の“ORBの指定”を参照してください。
必要に応じて上記の環境設定を行ったあと、アプリケーションをmain実装クラス、メソッド実装クラスとして以下(JDK1.4以降を使用する場合)のように作成します。たとえば、Pushモデルのコンシューマの場合、main実装クラスはイベントチャネルに接続するまでの部分で、pushメソッドの部分がメソッド実装クラスになります。
注意
サーバアプリケーションは、Javaアプレットで作成できません。
実行環境とバージョンの異なるJDKでコンパイル(javac)したアプリケーションのクラスは、実行環境のJDK/JREでは正しく動作しない場合があります。この場合、実行環境と同一バージョンのJDK環境で再度コンパイル(javac)してから実行してください。
アプリケーション運用環境の環境変数LD_LIBRARY_PATHに$OD_HOME/libを設定してください。
JDK1.2.2は、アプリケーション運用環境だけが使用可能です。
■main実装部
サーバアプリケーションのインプリメンテーション情報として、インプリメンテーションリポジトリに以下の定義情報(インタフェースリポジトリIDとの対応付け)を設定します。なお、インプリメンテーションリポジトリは、OD_impl_instコマンドの-axオプションを使用して登録します。
(1)インタフェースリポジトリID = (2)動的ライブラリ名
(1)インタフェースリポジトリID
実装するインタフェースに対応したインタフェースリポジトリIDを指定します。
イベントサービスの場合
通信モデル | サプライヤ | コンシューマ |
---|---|---|
Push | IDL:CosEventComm/PushSupplier:1.0 | IDL:CosEventComm/PushConsumer:1.0 |
Pull | IDL:CosEventComm/PullSupplier:1.0 | IDL:CosEventComm/PullConsumer:1.0 |
Mixed | IDL:CosEventComm/PushSupplier:1.0 | IDL:CosEventComm/PullConsumer:1.0 |
ノーティフィケーションサービスの場合
通信モデル | サプライヤ | コンシューマ |
---|---|---|
Mixed | IDL:CosEventComm/PushSupplier:1.0 | IDL:CosEventComm/PullConsumer:1.0 |
Mixed | IDL:CosNotifyComm/StructuredPushSupplier:1.0 | IDL:CosNotifyComm/StructuredPullConsumer:1.0 |
(2)動的ライブラリ名
動的ライブラリとして作成したメソッド実装部のオブジェクト名を指定します。
SolarisシステムおよびLinuxシステムの場合は、絶対パスで指定してください。
注意
PushモデルのコンシューマおよびPullモデルのサプライヤの場合は、インプリメンテーション情報の“thr_conc_init”に2以上の値を指定し、スレッドモードを設定してください。
SSL通信を行う場合は、インプリメンテーション情報に“ssl=ON”および“ior=1.1”を指定してください。
■メソッド実装部
アプリケーションでは、以下のメソッドを実装します。
イベントサービスの場合
通信モデル | サプライヤ | コンシューマ |
---|---|---|
Push | disconnect_push_supplier() | push() |
Pull | pull() | disconnect_pull_consumer() |
Mixed | disconnect_push_supplier() | disconnect_pull_consumer() |
ノーティフィケーションサービスの場合
通信モデル | サプライヤ | コンシューマ |
---|---|---|
Mixed | disconnect_push_supplier() | disconnect_pull_consumer() |