検索
連載

Tomcat 6で実現!Ajaxを超える通信技術CometTomcatはどこまで“安全”にできるのか?(3)(3/3 ページ)

PC用表示 関連情報
Share
Tweet
LINE
Hatena
前のページへ |       

サーブレットにCometを実装する

 移動したら、サーブレットの作成に移ります。Cometはイベント受信後、エディタでCometServlet.javaを作成します。サーブレットには、以下の内容を記述していきます。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 以上でサーブレットの記述は完了しました。

 Cometの実現には、Tomcat 6から提供されたorg.apache.catalina.CometEventクラスorg.apache.catalina.CometProcessorインターフェイスが使われています。

Cometでチャットをしてみよう!

 それでは、作成したサーブレットをコンパイルしましょう。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 無事にエラーなく終了すれば、作成完了です。最後に、Tomcatの再起動を実行します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 再起動が完了したら、実際に作成したチャットを開いてみましょう。「http://[サーバのIPアドレス]:8080/jsp/CometChat.jsp」を開いて、発言してみましょう。

 発言をすると、同時に接続しているページ全部へメッセージが送信され、描画されるのが分かります。複数のウィンドウで同時に接続して行うと、以下のようになります。

図4 チャット中のクライアント(1)
図4 チャット中のクライアント(1)
図5 チャット中のクライアント(2)
図5 チャット中のクライアント(2)

次回はTomcatが持つセキュリティリスクについて

 TomcatもCometをサポートし、閲覧者同士がリアルタイムに情報交換できるWebアプリケーションの提供など可能になったことは大きな進展ですね。

 Cometの活用事例については、@ITの記事「リバースAjax機能はAjax+Javaをもっとやさしくする?の「サーバプッシュ型Ajaxアプリケーションの応用例」や@ITの記事「サーバが通信を開始できるComet活用Webチャット」の「ハイライト2・快適かつ強力なチャットサービスLingr」に詳しいので、ご参照ください。

 今回まではTomcatの設定や運用、新機能について触れてきましたが、次回からはいよいよTomcatが持つセキュリティのリスクについて触れていきます。

著者プロフィール

x-lab チーム

株式会社アメニクスのR&D部門として、企業の価値向上を目的に結成された研究開発チーム(x-lab=amenix laboratory)。

アメニクスの社員をはじめ、システム開発技術者のみに限らず、MBA教授や外資系出身エンジニアなど幅広いメンバーが所属している。IT技術からマーケティング、金融テクノロジーなどさまざまな分野で活動中。


主な著書

『最速導入!オープンソースでつくる実用オンラインショップ』



Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る