WebSocket のサポートを強化するために、Web アプリケーションを Virgo Tomcat サーバーから Virgo Jetty サーバーに移動しようとしました。Web アプリケーションは正常にデプロイされて開始されましたが、Virgo Tomcat のように同じ URL の下にアプリケーションが見つかりませんでした。誰かがこの問題を経験していますか? 最後に、私の webapp は .par アーカイブであり、すべてのコードはここにあります。
2 に答える
0
Jetty の websocket 実装のメンテナーには、2 つの選択肢があります。
- Virgo に Jetty 9 にアップグレードするよう説得します。Jetty 8.1.3 の WebSocket サポート (Virgo 3.6.3-RELEASE に同梱されているもの) は、WebSocket の実装が古すぎて役に立たないためです。
- virgo tomcat を使用し、WebSocket の使用をスキップします。
いくつかの歴史:
- RFC-6455 (The WebSocket Protocol) は 2011 年 12 月に最終化されました
- Jetty 8.1.3 には仕様ごとに RFC-6455 が実装されていますが、2012 年 4 月の最新のもののみです。
- Chrome と Firefox は、2013 年 11 月に Sec-WebSocket-Protocol 検証のルールを変更します
- Jetty 7.x および 8.x のすべてのバージョンが影響を受けます (Jetty 7.x および 8.x は、現時点でセキュリティおよびデータ破損のメンテナンス中であるため、修正プログラムはありません)。
- Tomcat 8.x の初期バージョンも影響を受けます。
- Jetty 9.x には、2013 年 11 月に新しい Sec-WebSocket-Protocol ルールに修正が適用されました。
- 2014 年 1 月の Tomcat 8.0 初期リリース投票は、Sec-WebSocket-Protocol の問題により失敗し、修正のために 1 週間延期されました
- 現在の Tomcat 8.x リリースは修正されています
要するに、ブラウザーで websocket を使用する場合は、Tomcat 8.x または Jetty 9.x の最新バージョンを使用して、正常に安定させる必要があります。
また、JSR-356 (別名 javax.websocket) を使用する場合は、Jetty 9.x も使用する必要があります (Jetty 7 または Jetty 8 では使用できないため)。
于 2014-08-29T16:11:13.690 に答える
0
Virgo を Jetty 9 にアップデートするためのチケット [1] を作成しました。
于 2014-09-12T08:55:52.047 に答える