Eclipseで "Hello world" メッセージを送信するプログラムを作成 (ページ 5/5)
Eclipseによる iPush クライアント開発の手順
動作確認 1 - Java アプリケーションとして実行
プログラムが正常に動作するか、試してみましょう。
[Run] / [Run As] / [Java Application]を選択して例題を実行します。
iPush サーバーへの接続に成功したならば、コンソール・ビューに Connect OK! と表示されます。
そうでないならば、ご使用のネットワーク環境を確認するか、ステップ 12 でご紹介した情報に基づき、接続失敗の原因につきチェックください。

図 26. Java アプリケーションとして例題を実行

図 27. iPush サーバーへの接続に成功すると、コンソール・ビューに Connect OK! と表示される
ここでクライアントはサブジェクト demo.eclipse.[あなたの名前] をサブスクライブしていますので、iPush サーバーよりプッシュされたメッセージを受信可能となっています。
動作確認 2 - メッセージの送り手として iPush2JavaSubjectSample を実行
サンプル・プログラムの iPush2JavaSubjectSample (iPush V2 クライアント Java パッケージに同梱) を使用して、iPush サーバーにメッセージを送信します。
The Java のソースコードは、iPush V2 Java パッケージ API のサブフォルダ Samples\iPush2JavaSubjectSample にありますので、ご使用の J2SDK 環境でコンパイルの上、実行してください。
注: iPush2JavaSubjectSample をコンパイルおよび実行する際には、make.bat と run.bat (上記サブフォルダにあります) のパス指定を、ご使用の環境と合わせてください。
iPush2JavaSubjectSample を実行しましたら、iPush サーバーに接続するため、以下の情報を入力してください。:
- Server: www.icetechnology.com
- Port: 8000
- Company: ICE
- Product: iPush
- Username: eclipse
- Password: eclipse

図 28. メッセージの送り手として iPush2JavaSubjectSample を実行
[Connect TCP] ボタンをクリックしてください。
接続されますと、ステータス情報 Connect to server [www.icetechnology.com] with Connection ID [x] が表示されます。
demo.eclipse.[あなたの名前] のサブジェクト名でメッセージを送信します。
(a) Subject 欄に demo.eclipse.[あなたの名前] を入力します。ステップ 13 でサブスクライブしたものと同一のサブジェクト名にする必要があります。
(b) Message 欄に Hello, world! と入力します。
(c) [Send subject msg] ボタンをクリックして iPush サーバーにメッセージを送信します。

図 29. サブジェクト demo.eclipse.[あなたの名前] で iPush サーバーに Hello, world! を送信
ステータス情報 Sent: Hello world! が表示されます。
動作確認 3 - Eclipse 上で受信メッセージを確認
Eclipse のコンソール・ビューを確認すると、Subject = demo.eclipse.[あなたの名前], Data = Hello world! が表示されるはずです。
表示されていれば、例題は正しく動作しています。

図 30. Subject = demo.eclipse.[あなたの名前], Data = Hello world! が Eclipse のコンソール・ビューに表示される
例題クライアントは iPush サーバーから更にメッセージを受信できます。また更にコードを追加することも可能です。
Eclipse コンソール・ビューの [Terminate] ツールボタンをクリックしてプログラムを停止します。

図 31. 例題クライアントの実行を停止
更に改良 - 自動返答ロボット
Eclipse の Java エディターに戻って、メソッド OnSubjectMessage() のところで ip1 が受信メッセージに応えて demo.eclipse.[あなたの名前]_reply というサブジェクト経由で(非パーシステント)メッセージ Hello world, too! を送り返すようにします。
ここでは iPush サーバーに応答メッセージを送信するメソッド ipushSendNPSubjectData() を使用します。引数は次の通りです:
- arg0: 接続 ID.
- arg1: 送信サブジェクト名。ここでは "demo.eclipse.[あなたの名前]_reply" になります。
- arg2: 送信メッセージ本体。ここでは "Hello world, too!" になります。
- arg3: メッセージのプライオリティ。ここでは値 5 にします。
- arg4: メッセージの QoS レベル。ここでは値 0 にします。
|
ip1.ipushSendNPSubjectData(connId, "demo.eclipse.tonyhsiao_reply", "Hello world, too!", (byte)5, (byte)0); |

図 32. 自動返答ロボットを追加
ここでも ipushSendNPSubjectData() メソッドの左側にクイック・フィックス・エラーが表示されますので、アイコンをクリックし [Surround with try/catch] を選択して修正します。

図 33. クイック・フィックス・エラーのアイコンをクリック
|
try { |

図 34. クイック・フィックスが try/catch コードの追加を支援
動作確認 4 - 双方向通信
もう一度例題を実行します。
(a) Eclipse 上で、[Run] / [Run As] / [Java Application] を選択します。 Connect OK! がコンソール・ビューに表示されます。
(b) 実行中であれば iPush2JavaSubjectSample ウィンドウに移ります。
(c) Subject 欄に demo.eclipse.[あなたの名前]_reply と入力します。必ず上記「更に改良 - 自動返答ロボット」と同一のサブジェクト名を入力してください。
(d) [Subscribe subject] ボタンをクリックしてサブジェクトをサブスクライブします。
次のようなステータス情報が表示されます。
Subject subscribed [demo.eclipse.[あなたの名前]_reply]
iPush[1]:Subject Command OK (700-demo.eclipse.[あなたの名前]_reply)

図 35. iPush2JavaSubjectSample でサブジェクト demo.eclipse.[あなたの名前]_reply をサブスクライブ
(e) iPush2JavaSubjectSample 画面の Subject 欄に demo.eclipse.[あなたの名前] を入力します。ステップ 13 でサブスクライブしたものと同一のサブジェクト名にする必要があります。
(f) [Send subject msg] ボタンをクリックしてメッセージ Hello world! を送信します。

図 36. メッセージ Hello world! を再び送信
(g) Eclipse のコンソール・ビューに Hello world! が表示され、同時に Hello world, too! が iPush2JavaSubjectSample 画面に表示されます。例題クライアントは iPush サーバーを経由してメッセージの送受信を行なえるようになります。このことは iPush アプリケーションは双方向通信が可能であることを示します。

図 37. iPush アプリケーションは双方向通信が可能
終わりに - Eclipse で簡単に iPush アプリケーションが開発できます。
本例題を通じて、iPush アプリケーションの開発がいかに簡単かつ素早くできるかがお分かりいただけたものと思います。Eclipse と iPush V2 Java パッケージ API を使用すれば、ほんのわずかの時間でリアルタイム Java アプリケーション及びアプレットを作成できます。
| ページ 5/5 | 1 2 3 4 5 |