Atmosphere を現在のアプリケーションに統合しています。IE 11 と最新バージョンの Chrome では、すべてがうまく機能します。ただし、IE 10 では、クライアントがサーバーに対して AJAX 呼び出しを行った後、プッシュ通知を受け取ることができません。
Atmosphere デバッグをオンにしました。これが IE 10 のログです。
executeWebSocket の呼び出し
URL の使用: ws://t1c.lh.com:8080/wicket/page?12-IResourceListener.9-&X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=2.0.8-jquery&X.....
Websocket が正常に開かれました
1 つのグローバル コールバックの呼び出し: 開始
....既存の AJAX リクエストを行います.....
1 つのグローバル コールバックの呼び出し: 登録解除
Websocket は正常に閉じられました
登録解除の呼び出し後、クライアントはサーバー プッシュ イベントを受信しなくなります。この登録解除の呼び出しは IE 11 では発生しません。IE 11 はプッシュ通知を問題なく受信します。
修正方法に関するアイデアはありますか?
これが私たちの雰囲気設定です。Tomcat 8.0.23 を使用。
<servlet>
<description>Atmospherefilter</description>
<servlet-name>Atmospherefilter</servlet-name>
<servlet-class>org.atmosphere.cpr.AtmosphereServlet</servlet-class>
<init-param>
<param-name>applicationClassName</param-name>
<param-value>AppClassHere</param-value>
</init-param>
<init-param>
<param-name>configuration</param-name>
<param-value>development</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.useWebSocket</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.useNative</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.cpr.sessionSupport</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.websocket.maxIdleTime</param-name>
<param-value>60000</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.useWebSocketAndServlet3</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.cpr.asyncSupport</param-name>
<param-value>org.atmosphere.container.JSR356AsyncSupport</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.cpr.broadcastFactory</param-name>
<param-value>org.atmosphere.cpr.DefaultBroadcasterFactory</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.cpr.broadcasterCacheClass</param-name>
<param-value>org.atmosphere.cache.UUIDBroadcasterCache</param-value>
</init-param>
<init-param>
<param-name>filterMappingUrlPattern</param-name>
<param-value>/*</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.websocket.WebSocketProtocol</param-name>
<param-value>org.atmosphere.websocket.protocol.EchoProtocol</param-value>
</init-param>
<init-param>
<param-name>org.atmosphere.cpr.broadcastFilterClasses</param-name>
<param-value>org.apache.wicket.atmosphere.TrackMessageSizeFilter</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>Atmospherefilter</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
ありがとう、マット