問題タブ [atmosphere]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
748 参照

java - 雰囲気APIを使用しますか、それともグリズリーを直接使用しますか?

雰囲気APIを使用するか、グリズリーを直接使用するかの違いがわかりませんか?説明できますか?

0 投票する
1 に答える
631 参照

java - 大気-パブサブ.戦争と組み合わせて大気-スペード-サーバーを使用する方法

Atmium-spade-server.jar + pubsub.war で遊んでみたいと思います。最初にmavenをインストールしましたが、正直なところ、Mavenは私にとって初めてのことです。誰かがそれを正しく使用する方法を説明してください。

私が試したこと

  1. そこから Atmosphere-spade-server + pubsub.war をダウンロードします。
  2. java -jar atmosphere-spade-server-0.6.0-20100329.142039-1.jar -a atmosphere-pubsub.war
  3. curl http://localhost:8080/atmosphere-pubsub/myAtmosphereTopic

    <html><body><h1>Resource Not> Found</h1></body></html>

Atmosphere の使用方法についてのガイド付きツアーがあるだけです。

0 投票する
1 に答える
3289 参照

java - 大気中の他のフレームワーク(彗星)からの通知をトリガーする方法は?

基本的にいくつかのサンプルを読みましたが、すべてが 1 つのサーブレットに含まれています。たとえば、doGet を使用してロング ポーリング接続を確立してから、doPost を使用してイベントをトリガーし、中断されたすべての接続を通知します。

これが私の質問です:私はSpring MVCで他のWebアクションプログラミングをしています.Spring MVCコントローラーでは、ユーザーは/message/postを介してメッセージを投稿します.このアクションを作成して、雰囲気ハンドラーをトリガーして中断された接続を通知するにはどうすればよいですか?

0 投票する
2 に答える
1757 参照

java - Atmosphere または Cometd を使用する

これら 2 つの Java コメット ライブラリの違いは何ですか? どちらかを選択する理由はありますか?

0 投票する
2 に答える
3262 参照

dependencies - AtmosphereおよびJerseyとの依存関係がありません

AtmosphereとJerseyを一緒に使用して、ユーザーにメッセージをブロードキャストできるようにしています。ただし、Jerseyエンドポイントへの要求に応じて、以下がログに表示され、ServletExceptionが発生します。

スタックトレースの一部:

私はMavenを使用しており、次の依存関係を追加しました。

私は何が欠けていますか?ありがとう!

0 投票する
1 に答える
3700 参照

atmosphere - Atmosphere ランタイムを使用して単一の接続にブロードキャストできない

Atmosphere ランタイム 0.6 スナップショットを使用しています。Tomcat 7 は、Http11 Nio コネクタを使用していることを正しく記録しており、BlockingIO が使用されるという警告はありません。

3 種類のチャネルにメッセージを送信しようとしています。

  1. グローバル ブロードキャスター - 中断されたすべてのリソースにブロードキャストします。(全て)
  2. 特定のリソース (パートナーなど) にブロードキャストする
  3. 現在のリソースにブロードキャスト (自己)

ログイン アクションが発生したときに、この種のブロードキャストを実現するには、セッションに何を保存する必要がありますか?

私のコードの詳細は次のとおりです。

  1. 私のハンドラーは AtmosphereHandler を実装します
  2. コンストラクターで、globalBroadcaster を次のようにインスタンス化します。

    globalBroadcaster = new DefaultBroadcaster();

  3. ログインすると、

    resource.getAtmosphereConfig().getServletContext().setAttribute(name, selfBroadcaster); ここで、name はリクエスト パラメーターのユーザー名で、selfBroadcaster は DefaultBroadcaster の新しいインスタンスです。

  4. sendMessageToPartner のコードは次のとおりです。

private synchronized void sendMessageToPartner(Broadcaster selfBroadcaster, AtmosphereResource<HttpServletRequest, HttpServletResponse> resource,String name, String message) {
// this gives the partner's name
String partner= (String) resource.getAtmosphereConfig().getServletContext().getAttribute(name + PARTNER_NAME_TOKEN);
// get partner's broadcaster
Broadcaster outsiderBroadcaster = (Broadcaster) resource
.getAtmosphereConfig().getServletContext()
.getAttribute(partner);
if (outsiderBroadcaster == null) {
sendMessage(selfBroadcaster, "Invalid user " + partner);
return;
}
// broadcast to partner
outsiderBroadcaster.broadcast(" **" + message);

必要な情報をすべて提供したことを願っています。必要に応じて、さらに情報を提供できます。

問題は、グローバル メッセージが送信されることです。パートナーへのメッセージが送信されると、ブロックされる場合があり、メッセージはクライアントでまったく受信されません。これは、3 ~ 4 件のメッセージの後に一貫して発生します。

スレッドの問題はありますか?私は何を間違っていますか?

誰かがこれで私を助けてくれることを願っています。

0 投票する
3 に答える
1548 参照

javascript - 複数のストリーミング XmlHttpRequests (XHR)/Channels ブロック?

Comet を使用する Web アプリを作成しています。バックエンド側は Atmosphere と Jersey でビルドされています。しかし、複数のチャンネルを購読したいときに問題が発生しました。jQuery プラグインの雰囲気供給は、1 つのチャネルのみをサポートしています。私は今のところコメットに関して独自の実装を書き始めました。

問題

チャネル 1 を「Hello」というメッセージで更新すると、通知が届きません。ただし、後でメッセージ「World」でチャネル2を更新すると。「Hello」と「World」の両方を同時に取得します..

AtmosphereConnectionComet の実装:

更新しました

  • Ivo の修正を追加 (スコープとインスタンス化の問題)
  • <--EOD--> indexOf が大気メッセージをキャプチャするように修正しました
  • onIncoming XHR メソッドにコメントを追加しました

更新 9-1 23:00 GMT+1

雰囲気が物を出力していないようです..

ProductEventObserver

これは、SEAM イベントを監視する ProductEventObserver です。このコンポーネントは自動作成され、SEAM の APPLICATION コンテキストにあります。イベントをキャッチし、broadcastToProduct を使用して適切なブロードキャスターを取得し (broadcasterfactory 経由)、中断された接続に json メッセージ (gson を json シリアライザー/マーシャラーとして使用) をブロードキャストします。

Web.xml

雰囲気.xml

p>

放送局:

更新 10-1 4:18 GMT+1

  • 次のコンソール出力は、ブロードキャスターが見つかり、アクティブであることを示しています。
  • BroadcastToProduct を完全なクラス コードに更新しました
  • 開始段落を問題で更新
  • web.xmlとatmosphere.xmlを追加

コンソール出力:

0 投票する
1 に答える
1210 参照

primefaces - Glassfish v3 および Primefaces で Atmosphere を使用する際の問題

実行するためにAtmosphereが必要なprimefaces ajax push/cometを使用してチャットアプリを作成しようとしています.amは私のWebサーバーとしてglassfish v3を使用しています.しかし、チャットアプリを起動してチャットしようとすると、この例外が発生します.

警告: StandardWrapperValve[Comet Servlet]: PWC1382: サーブレット Comet Servlet java.lang.IllegalAccessError に例外を割り当てます: クラス org.primefaces.comet.PrimeFacesCometServlet からフィールド org.atmosphere.cpr.AtmosphereServlet.atmosphereHandlers にアクセスしようとしました。

プロジェクトの締め切りが迫っているので、どなたか助けてください。よろしくお願いします。

0 投票する
2 に答える
1201 参照

java - 大気サンプルの実行方法は?

Github から Atmosphere Samples をダウンロードしました。chat-sample で jetty:run goal を実行したところ、いくつか問題が発生しました。

ブラウザでページ (http://localhost:9090) にアクセスできますが、チャットを開始すると、サーバーが AJAX 要求ごとに 404 エラー ページを返すため、何も追加されません。

私は何を間違っていますか?