TeedaのajaxでComet実装してみた。
昨日に引き続き、S2でAjax。seasar.orgのSVNリポジトリに、teeda-ajax-demoがいたので、早速触ってみたけど、、、いい!これいい!以前のs2-ajaxより、断然使いやすくなってる。JavaScript側から、命名規則あわせるだけでコンポーネントを呼び出せる辺り、かなりナウい。
ということで、早速、Cometなチャット(ポーリングせず、発言があった時だけサーバから通信)を実装してみた。1〜2時間でゴリゴリ作ったんで色々問題あるけど、とりあえず動かしてみたい人は以下の通りにしてください。
(削除済み)
- seasar.orgのSVNからteeda-ajax-demoを取得。
- 上記ファイルをDLして解凍。できあがったteeda-ajax-demoフォルダを、既存のものに上書き。
- ビルド、Tomcatの起動。
- http://localhost:8080/teeda-ajax-demo/ajax/chat.html にアクセス。
問題点は以下の通り。
- 一度受信し始めると、サーブレットを止めるまで、しつこくアクセスし続ける
- たまに1回の発言が複数回表示される
- 日本語が通らない
- 出力される文字列を、サーバ側で作ってしまっている
あと、スレッド制御も適当なので、あまり参考にはならないと思うけど、雰囲気だけは味わえるはず。
もうちょっと、まともに作ります。