Interstage Application Server アプリケーション作成ガイド (イベントサービス編)
目次 索引 前ページ次ページ

付録C サンプルプログラム(Windows(R))> C.2 実行手順

C.2.3 Java言語アプリケーション

 Java言語のサンプルプログラムについて説明します。

(c1) イベントサービス(Pushモデル)のサンプルプログラム
(c2) イベントサービス(Pullモデル)のサンプルプログラム
(c3) イベントサービス(Mixedモデル)のサンプルプログラム
(c4) イベントサービス(Mixedモデル)のEventFactoryを使用したサンプルプログラム
(c5) イベントサービス(Mixedモデル)のEventFactoryを使用したサンプルプログラム(複数IP対応)
(c6) ノーティフィケーションサービス(Mixedモデルany型データ)のサンプルプログラム
(c7) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のサンプルプログラム
(c8) ノーティフィケーションサービス(Mixedモデルany型データ)のEventFactoryを使用したサンプルプログラム
(c9) ノーティフィケーションサービス(Mixedモデルany型データ)のEventFactoryを使用したサンプルプログラム(複数IP対応)
(c10) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のEventFactoryを使用したサンプルプログラム
(c11) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のEventFactoryを使用したサンプルプログラム(複数IP対応)
(c12) 接続情報取得(情報取得)のサンプルプログラム
(c13) 接続情報取得(個数取得)のサンプルプログラム
(c14) ノーティフィケーションサービス(MultiCastモデル)のローカルトランザクションのサンプルプログラム
(c15) ノーティフィケーションサービス(MultiCastモデル)のグローバルトランザクションのサンプルプログラム
(c16) ノーティフィケーションサービス(Point-To-Pointモデル)のローカルトランザクションのサンプルプログラム
(c17) ノーティフィケーションサービス(Point-To-Pointモデル)のグローバルトランザクションのサンプルプログラム

(c1) イベントサービス(Pushモデル)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

イベントサービスのチャネル静的生成

Push

any

java\push

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。現ディレクトリを以下のディレクトリに移動します。

  cd %ES_HOME%\src\samples\java\push
  make

 翻訳が成功した場合、push_consumer.class, push_supplier.class, UserServant.classの3つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“push::sample”を登録します。

  esmkchnl -g push -c sample -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“push”を起動します。

  esstartchnl -g push

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマのインプリメンテーション情報の登録

 push_consumerのインプリメンテーション情報を登録します。

  cd %ES_HOME%\src\samples\java\push
  register

コンシューマの起動

 現ディレクトリを以下に移動し、push_consumerを起動します。

  cd %ES_HOME%\src\samples\java\push
  consumer

 これで、コンシューマがイベントチャネル“push::sample”に接続されます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、push_supplierを起動します。

  cd %ES_HOME%\src\samples\java\push
  supplier

 これにより、サプライヤが送信したメッセージをイベントチャネルに接続されたコンシューマに送信することができます。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    CosEventComm.PushConsumer.push
    push message : Push-Java

(c2) イベントサービス(Pullモデル)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

イベントサービスのチャネル静的生成

Pull

any

java\pull

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\java\pull
  make

 翻訳が成功した場合、pull_consumer.class, pull_supplier.class, UserServant.classの3つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“pull::sample”を登録します。

  esmkchnl -g pull -c sample -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“pull”を起動します。

  esstartchnl -g pull

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

サプライヤのインプリメンテーション情報の登録

 pull_supplierのインプリメンテーション情報を登録します。

  cd %ES_HOME%\src\samples\java\pull
  register

サプライヤの起動

 現ディレクトリを以下に移動し、pull_supplierを起動します。

  cd %ES_HOME%\src\samples\java\pull
  supplier

 これで、サプライヤがイベントチャネル“pull::sample”に接続されます。

コンシューマの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、pull_consumerを起動します。

  cd %ES_HOME%\src\samples\java\pull
  consumer

 コンシューマがイベントを要求し、イベントチャネルは接続されているサプライヤからイベントを取り出し、コンシューマに復帰させます。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : Pull-Java

(c3) イベントサービス(Mixedモデル)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

イベントサービスのチャネル静的生成

Mixed

any

java\mix

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\java\mix
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\java\mix
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\java\mix
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : Mixed-Java

(c4) イベントサービス(Mixedモデル)のEventFactoryを使用したサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

イベントサービスのチャネル動的生成

Mixed

any

java\factory

 イベントファクトリがセットアップされていない場合は、イベントサービスが未起動の状態で、essetupコマンド(essetup -f)によりイベントファクトリのセットアップを行ってください。

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\java\factory
  make

 翻訳が成功した場合、factory_consumer.class, factory_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントファクトリの起動

 イベントファクトリを起動していない場合は、以下のコマンドまたは"EventFactory"サービスの「開始」でイベントファクトリを起動します。

  esstartfctry

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、factory_consumerを起動します。

  cd %ES_HOME%\src\samples\java\factory
  consumer
  1.create, 2.create_channel, 3.get_event_channel
  select(1-3):

 1.を選択すると、create_channelメソッドによりイベントチャネルの生成を以下のイベントチャネル名で生成します。

  select(1-3):1
  input EventChannel name:

 生成するイベントチャネル名(例:“ch1”)を指定します。

  input EventChannel name:ch1
  create EventChannel(ch1)

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、factory_supplierを起動します。

  cd %ES_HOME%\src\samples\java\factory
  supplier
  1.create, 2.create_channel, 3.get_event_channel
  select(1-3):

 1.を選択し、コンシューマが接続されているイベントチャネル名“ch1”を指定します。サプライヤがイベントチャネルに接続し、データを送信します。このとき、事前に動的イベントチャネルが生成されていれば、3.を選択して既存のチャネルを使用することができます。

  select(1-3):1 (または、3)
  input EventChannel name:ch1
  create EventChannel(ch1)

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : Factory-MIX-Java 

(c5) イベントサービス(Mixedモデル)のEventFactoryを使用したサンプルプログラム(複数IP対応)

種別

通信モデル

データ型

ディレクトリ

イベントサービスのチャネル動的生成(複数IP対応)

Mixed

any

java\factory

 イベントファクトリがセットアップされていない場合は、イベントサービスが未起動の状態で、essetupコマンド(essetup -f)によりイベントファクトリのセットアップを行ってください。

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\java\factory
  make

 翻訳が成功した場合、factory_consumer.class, factory_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントファクトリの起動

 イベントファクトリを起動していない場合は、以下のコマンドまたは"EventFactory"サービスの「開始」でイベントファクトリを起動します。

  esstartfctry

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、factory_consumerを起動します。

  cd %ES_HOME%\src\samples\java\factory
  consumer
  1.create, 2.create_channel, 3.get_event_channel
  select(1-3):

 2.を選択すると、create_channelメソッドによりイベントチャネルの生成を以下のイベントチャネル名で生成します。

  select(1-3):2
  input EventChannel name:

 生成するイベントチャネル名(例:“ch1”)を指定します。

  input EventChannel name:ch1
  Do you use multi IP function?(y/n)

 複数IPアドレスを使用するため、“y”を選択します。

  Do you use multi IP function?(y/n)y
  Please input host name or IP address?

 複数IPアドレスを持つシステムで、イベントチャネルの通信経路を指定する場合に、ホスト名(例:“berk”)またはIPアドレスを指定します。

  Please input host name or IP address?berk
  Please input port number?

 複数IPアドレスを持つシステムで、イベントチャネルの通信経路を指定する場合に、ポート番号を指定します。ポート番号には、CORBAサービスのポート番号として指定されている値(例:“8002”)を指定してください。

  Please input port number?8002
  create EventChannel(ch1) Object

 コンシューマは生成したイベントチャネルに接続し、イベントを要求します。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、factory_supplierを起動します。

  cd %ES_HOME%\src\samples\java\factory
  supplier
  1.create, 2.create_channel, 3.get_event_channel
  select(1-3):

 2.を選択し、コンシューマが接続されているイベントチャネル名“ch1”を指定します。サプライヤがイベントチャネルに接続し、データを送信します。このとき、事前に動的イベントチャネルが生成されていれば、3.を選択して既存のチャネルを使用することができます。

  select(1-3):1 (または、3)
  input EventChannel name:ch1
  get EventChannel Object(ch1)

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : Factory-MIX-Java 

(c6) ノーティフィケーションサービス(Mixedモデルany型データ)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービスのチャネル静的生成

Mixed

any

notify\java\mix\any

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\mix\any
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -notify -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\mix\any
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\mix\any
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : Mixed-Java

(c7) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービスのチャネル静的生成

Mixed

StructuredEvent

notify\java\mix\structured

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\mix\structured
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -notify -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\mix\structured
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\mix\structured
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : StructuredEvent Mixed-Java

(c8) ノーティフィケーションサービス(Mixedモデルany型データ)のEventFactoryを使用したサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービスのチャネル動的生成

Mixed

any

notify\java\factory\any

 イベントファクトリがセットアップされていない場合は、イベントサービスが未起動の状態で、essetupコマンド(essetup -f)によりイベントファクトリのセットアップを行ってください。

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\factory\any
  make

 翻訳が成功した場合、factory_consumer.class, factory_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントファクトリの起動

 イベントファクトリを起動していない場合は、以下のコマンドまたは"EventFactory"サービスの「開始」でイベントファクトリを起動します。

  esstartfctry

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、factory_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\any
  consumer

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 1.を選択し、create_channelメソッドによりイベンチャネルの生成を行います。事前に動的イベントチャネルが2つ生成されている場合の例を以下に示します。

  select(1-3):1
  Do you use multi IP function?(y/n)

 複数IPアドレスを使用しないため、“n”を選択します。

  Do you use multi IP function?(y/n)n
  create EventChannelID = 3
  connecting...

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、factory_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\any
  supplier

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 2.を選択し、get_all_channelsメソッドにより現在動的生成されているイベントチャネルの一覧を取得します。

  select(1-3):2
  --- EventChannelID list(ALL=3) ---
         1,       2,       3
  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 次に3を選択し、コンシューマが接続されているイベントチャネルの識別ID“3”を指定します。サプライヤがイベントチャネルに接続し、データを送信します。

  input EventChannelID:3
  get EventChannel Object
  connecting...

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    connecting...
    pull message : Factory-Mixed-Java

(c9) ノーティフィケーションサービス(Mixedモデルany型データ)のEventFactoryを使用したサンプルプログラム(複数IP対応)

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービスのチャネル動的生成(複数IP対応)

Mixed

any

notify\java\factory\any

 イベントファクトリがセットアップされていない場合は、イベントサービスが未起動の状態で、essetupコマンド(essetup -f)によりイベントファクトリのセットアップを行ってください。

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\factory\any
  make

 翻訳が成功した場合、factory_consumer.class, factory_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントファクトリの起動

 イベントファクトリを起動していない場合は、以下のコマンドまたは"EventFactory"サービスの「開始」でイベントファクトリを起動します。

  esstartfctry

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、factory_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\any
  consumer

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 1.を選択し、create_channelメソッドによりイベンチャネルの生成を行います。事前に動的イベントチャネルが2つ生成されている場合の例を以下に示します。

  select(1-3):1
  Do you use multi IP function?(y/n)

 複数IPアドレスを使用するため、“y”を選択します。

  Do you use multi IP function?(y/n)y
  Please input host name or IP address?

 複数IPアドレスを持つシステムで、イベントチャネルの通信経路を指定する場合に、ホスト名(例:“berk”)またはIPアドレスを指定します。

  Please input host name or IP address?berk
  Please input port number?

 複数IPアドレスを持つシステムで、イベントチャネルの通信経路を指定する場合に、ポート番号を指定します。ポート番号には、CORBAサービスのポート番号として指定されている値(例:“8002”)を指定してください。

  Please input port number?8002

 生成したイベントチャネルの識別IDが表示され、コンシューマはそのイベントチャネルに接続し、イベントを要求します。事前に動的イベントチャネルが2つ生成されている場合の例を以下に示します。

  create EventChannelID = 3
  connecting...

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、factory_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\any
  supplier

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 2.を選択し、get_all_channelsメソッドにより現在動的生成されているイベントチャネルの一覧を取得します。

  select(1-3):2
  --- EventChannelID list(ALL=3) ---
         1,       2,       3
  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 次に3を選択し、コンシューマが接続されているイベントチャネルの識別ID“3”を指定します。サプライヤがイベントチャネルに接続し、データを送信します。

  input EventChannelID:3
  get EventChannel Object
  connecting...

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    connecting...
    pull message : Factory-Mixed-Java

(c10) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のEventFactoryを使用したサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービスのチャネル動的生成

Mixed

StructuredEvent

notify\java\factory\structured

 イベントファクトリがセットアップされていない場合は、イベントサービスが未起動の状態で、essetupコマンド(essetup -f)によりイベントファクトリのセットアップを行ってください。

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\factory\structured
  make

 翻訳が成功した場合、factory_consumer.class, factory_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントファクトリの起動

 イベントファクトリを起動していない場合は、以下のコマンドまたは"EventFactory"サービスの「開始」でイベントファクトリを起動します。

  esstartfctry

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、factory_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\structured
  consumer

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 1.を選択し、create_channelメソッドによりイベンチャネルの生成を行います。事前に動的イベントチャネルが2つ生成されている場合の例を以下に示します。

  select(1-3):1
  Do you use multi IP function?(y/n)

 複数IPアドレスを使用しないため、“n”を選択します。

  Do you use multi IP function?(y/n)n
  create EventChannelID = 3
  connecting...

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、factory_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\structured
  supplier

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 2.を選択し、get_all_channelsメソッドにより現在動的生成されているイベントチャネルの一覧を取得します。

  select(1-3):2
  --- EventChannelID list(ALL=3) ---
         1,       2,       3
  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 次に3.を選択し、コンシューマが接続されているイベントチャネルの識別ID“3”を指定します。サプライヤがイベントチャネルに接続し、データを送信します。

  input EventChannelID:3
  get EventChannel Object
  connecting...

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    connecting...
    pull message : StructuredEvent Factory-Mixed-Java

(c11) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のEventFactoryを使用したサンプルプログラム(複数IP対応)

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービスのチャネル動的生成(複数IP対応)

Mixed

StructuredEvent

notify\java\factory\structured

 イベントファクトリがセットアップされていない場合は、イベントサービスが未起動の状態で、essetupコマンド(essetup -f)によりイベントファクトリのセットアップを行ってください。

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\factory\structured
  make

 翻訳が成功した場合、factory_consumer.class, factory_supplier.classの2つのクラスが作成されます。

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは"EventService"サービスの「開始」でイベントサービスを起動します。

  esstart

イベントファクトリの起動

 イベントファクトリを起動していない場合は、以下のコマンドまたは"EventFactory"サービスの「開始」でイベントファクトリを起動します。

  esstartfctry

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、factory_consumer.exeを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\structured
  consumer

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 1.を選択し、create_channelメソッドによりイベンチャネルの生成を行います。事前に動的イベントチャネルが2つ生成されている場合の例を以下に示します。

  select(1-3):1
  Do you use multi IP function?(y/n)

 複数IPアドレスを使用するため、“y”を選択します。

  Do you use multi IP function?(y/n)y
  Please input host name or IP address?

 複数IPアドレスを持つシステムで、イベントチャネルの通信経路を指定する場合に、ホスト名(例:“berk”)またはIPアドレスを指定します。

  Please input host name or IP address?berk
  Please input port number?

 複数IPアドレスを持つシステムで、イベントチャネルの通信経路を指定する場合に、ポート番号を指定します。ポート番号には、CORBAサービスのポート番号として指定されている値(例:“8002”)を指定してください。

  Please input port number?8002

 生成したイベントチャネルの識別IDが表示され、コンシューマはそのイベントチャネルに接続し、イベントを要求します。

  create EventChannelID = 3
  connecting...

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、factory_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\factory\structured
  supplier

  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 2.を選択し、get_all_channelsメソッドにより現在動的生成されているイベントチャネルの一覧を取得します。

  select(1-3):2
  --- EventChannelID list(ALL=3) ---
         1,       2,       3
  1.create_channel, 2.get_all_channels, 3.get_event_channel
  select(1-3):

 次に3.を選択し、コンシューマが接続されているイベントチャネルの識別ID“3”を指定します。サプライヤがイベントチャネルに接続し、データを送信します。

  input EventChannelID:3
  get EventChannel Object
  connecting...

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    connecting...
    pull message : StructuredEvent Factory-Mixed-Java

(c12) 接続情報取得(情報取得)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

接続情報取得(情報取得)

java\util\proxy

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\java\util\proxy
  make

 翻訳が成功した場合、es_util_getproxy.classの1つのクラスが作成されます。

(2) サンプルプログラムの実行

 接続情報取得の実行方法を説明します。
 例として静的イベントチャネル“mix::sample”の場合を説明します。
 静的イベントチャネル“mix::sample”に接続して、接続情報を回収しないで異常終了したコンシューマおよびサプライヤが存在する場合、および静的イベントチャネル“mix::sample”に接続しているコンシューマおよびサプライヤの接続情報を取得したい場合に起動します。静的イベントチャネル“mix::sample”に接続しているコンシューマおよびサプライヤの実行方法は、“(c6) ノーティフィケーションサービス(Mixedモデルany型データ)のサンプルプログラム”および“(c7) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のサンプルプログラム”を参照してください。

接続情報取得の起動

 現ディレクトリを以下に移動し、es_util_getproxyを起動します。

  cd %ES_HOME%\src\samples\java\util\proxy
  es_util_getproxy

 静的イベントチャネル“mix::sample”に接続しているコンシューマおよびサプライヤの接続情報を取得します。

(3) 実行結果

 現在、静的イベントチャネル“mix::sample”に接続しているコンシューマおよびサプライヤの接続情報(IPアドレス、イベントチャネルに接続した時間およびproxy種別)が表示されます。

(c13) 接続情報取得(個数取得)のサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

接続情報取得(個数取得)

java\util\count

(1) サンプルプログラムを翻訳します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\java\util\count
  make

 翻訳が成功した場合、es_util_count.classの1つのクラスが作成されます。

(2) サンプルプログラムの実行

 接続情報取得の実行方法を説明します。
 例として静的イベントチャネル“mix::sample”の場合を説明します。
 静的イベントチャネル“mix::sample”に接続して、接続情報を回収しないで異常終了したコンシューマおよびサプライヤが存在する場合、および静的イベントチャネル“mix::sample”に接続しているコンシューマおよびサプライヤの接続情報を取得したい場合に起動します。静的イベントチャネル“mix::sample”に接続しているコンシューマおよびサプライヤの実行方法は、“(c6) ノーティフィケーションサービス(Mixedモデルany型データ)のサンプルプログラム”および“(b7) ノーティフィケーションサービス(MixedモデルStructuredEvent型データ)のサンプルプログラム”を参照してください。

接続情報取得の起動

 現ディレクトリを以下に移動し、es_util_countを起動します。

  cd %ES_HOME%\src\samples\java\util\count
  es_util_count

 静的イベントチャネル“mix::sample”に接続しているコンシューマ数、サプライヤ数およびイベントチャネルにキューイングされているイベントデータ数を取得します。

(3) 実行結果

 現在、静的イベントチャネル“mix::sample”に接続しているコンシューマ数、サプライヤ数およびイベントチャネルにキューイングされているイベントデータ数が表示されます。

(c14) ノーティフィケーションサービス(MultiCastモデル)のローカルトランザクションのサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービス(MultiCastモデル)のローカルトランザクション

Mixed

StructuredEvent

notify\java\localtran

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\localtran
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

ユニットの生成

 標準ユニットを生成します。ユニット定義ファイルは、%ES_HOME%\etc\def配下の雛型(esunit01.def)を参考にしてください。

  esmkunit -uf <ユニット定義ファイル>

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは“EventService”サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -notify -persist all -tran -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\localtran
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\localtran
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : StructuredEvent Mixed-Java

(c15) ノーティフィケーションサービス(MultiCastモデル)のグローバルトランザクションのサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービス(MultiCastモデル)のグローバルトランザクション

Mixed

StructuredEvent

notify\java\ots

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\ots
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

ユニットの生成

 拡張ユニットを生成します。ユニット定義ファイルは、%ES_HOME%\etc\def配下の雛型(esunit01.def)を参考にしてください。

  esmkunit -uf <ユニット定義ファイル>

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは“EventService”サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -notify -persist all -ots -unit <拡張ユニット名> -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\ots
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\ots
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : StructuredEvent Mixed-Java

(c16) ノーティフィケーションサービス(Point-To-Pointモデル)のローカルトランザクションのサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービス(Point-To-Pointモデル)のローカルトランザクション

Mixed

StructuredEvent

notify\java\ptp\localtran

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\ptp\localtran
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

ユニットの生成

 標準ユニットを生成します。ユニット定義ファイルは、%ES_HOME%\etc\def配下の雛型(esunit01.def)を参考にしてください。

  esmkunit -uf <ユニット定義ファイル>

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは“EventService”サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -notify -persist all -tran -ptp -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\ptp\localtran
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\ptp\localtran
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : StructuredEvent Mixed-Java

(c17) ノーティフィケーションサービス(Point-To-Pointモデル)のグローバルトランザクションのサンプルプログラム

種別

通信モデル

データ型

ディレクトリ

ノーティフィケーションサービス(Point-To-Pointモデル)のグローバルトランザクション

Mixed

StructuredEvent

notify\java\ptp\ots

(1) サンプルプログラムを翻訳し、イベントチャネルをネーミングサービスに登録します。

サンプルソースの翻訳

 サンプルプログラムを翻訳します。

  cd %ES_HOME%\src\samples\notify\java\ptp\ots
  make

 翻訳が成功した場合、mix_consumer.class, mix_supplier.classの2つのクラスが作成されます。

ユニットの生成

 拡張ユニットを生成します。ユニット定義ファイルは、%ES_HOME%\etc\def配下の雛型(esunit01.def)を参考にしてください。

  esmkunit -uf <ユニット定義ファイル>

イベントサービスの起動

 イベントサービスを起動していない場合は、以下のコマンドまたは“EventService”サービスの「開始」でイベントサービスを起動します。

  esstart

イベントチャネルの登録

 静的イベントチャネル“mix::sample”を登録します。

  esmkchnl -g mix -c sample -notify -persist all -ots -unit <拡張ユニット名> -ptp -l SJIS

イベントチャネルの起動

 イベントチャネルグループ“mix”を起動します。

  esstartchnl -g mix

(2) サンプルプログラムの実行

 コンシューマ、サプライヤの実行方法を説明します。

コンシューマの起動

 現ディレクトリを以下に移動し、mix_consumerを起動します。

  cd %ES_HOME%\src\samples\notify\java\ptp\ots
  consumer

 コンシューマがイベントを要求し、イベントチャネルはイベントチャネルに蓄積されたデータをコンシューマに復帰させます。

サプライヤの起動

 別のコマンドプロンプトから現ディレクトリを以下に移動し、mix_supplierを起動します。

  cd %ES_HOME%\src\samples\notify\java\ptp\ots
  supplier

 これで、イベントチャネルにメッセージを蓄積します。

(3) 実行結果

 サンプルプログラムの実行結果を示します。コンシューマ側のコマンドプロンプトに実行結果が出力されます。

  consumer
    pull message : StructuredEvent Mixed-Java

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005