サーバアプリケーションを作成する場合に必要な環境設定を以下に示します。必要に応じて設定してください。
環境変数CLASSPATHの設定
環境変数CLASSPATHの設定方法については、「7.1.2 クライアントアプリケーションの作成方法」の「環境変数CLASSPATHの設定」を参照してください。
ORBの指定
ORBの指定方法については、「7.1.2 クライアントアプリケーションの作成方法」の「ORBの指定」を参照してください。
必要に応じて上記の環境設定を行ったあと、アプリケーションをmain実装クラス、メソッド実装クラスとして以下のように作成します。たとえば、Pushモデルのコンシューマの場合、main実装クラスはイベントチャネルに接続するまでの部分で、pushメソッドの部分がメソッド実装クラスとなります。
注意
サーバアプリケーションは、Javaアプレットで作成できません。
実行環境とバージョンの異なるJDKでコンパイル(javac)したアプリケーションのクラスは、実行環境のJDK/JREにおいて正しく動作しない場合があります。この場合、実行環境と同一バージョンのJDK環境で再度コンパイル(javac)してから実行してください。
アプリケーション運用環境の環境変数LD_LIBRARY_PATHに、$OD_HOME/libを設定してください。
■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)動的ライブラリ名
動的ライブラリとして作成したメソッド実装部のオブジェクト名を指定します。
絶対パスで指定してください。
注意
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() |