0

私はTomcat6で雰囲気を試していますが、WebSocketではなく長いポーリングのみが機能します。コンソール出力で受け取るメッセージは次のとおりです。

 Tomcat failed to detect this is a Comet application because context.xml is missing or the Http11NioProtocol Connector is not enabled.

これに関する情報をいただければ幸いです、ありがとう

更新:web.xmlとserver.xmlを変更した後、エラーメッセージが表示されますが、チャットアプリケーションは常に長いポーリングにフォールバックします-WebSocketデモのいくつかの異なる.war展開を試しましたが、それらはすべて同じように動作します。

Tomcat 7も試しましたが、それでも長いポーリングを使用します。

スタートアップのログ情報

10:42:30.423 [main] INFO  o.atmosphere.cpr.AtmosphereFramework - Installed Default AtmosphereInterceptor [Android Interceptor Support, SSE Interceptor Support, JSONP Interceptor Support]. Set org.atmosphere.cpr.AtmosphereInterceptor.disableDefaults in your xml to disable them.
10:42:30.423 [main] WARN  o.atmosphere.cpr.AtmosphereFramework - No BroadcasterCache configured. Broadcasted message between client reconnection will be LOST. It is recommended to configure the HeaderBroadcasterCache.
10:42:30.423 [main] INFO  o.atmosphere.cpr.AtmosphereFramework - HttpSession supported: false
10:42:30.423 [main] INFO  o.atmosphere.cpr.AtmosphereFramework - Using BroadcasterFactory: org.atmosphere.cpr.DefaultBroadcasterFactory
10:42:30.423 [main] INFO  o.atmosphere.cpr.AtmosphereFramework - Using WebSocketProcessor: org.atmosphere.websocket.DefaultWebSocketProcessor
10:42:30.423 [main] INFO  o.atmosphere.cpr.AtmosphereFramework - Using Broadcaster: org.atmosphere.jersey.JerseyBroadcaster
10:42:30.428 [main] INFO  o.atmosphere.cpr.AtmosphereFramework - Atmosphere Framework 1.0.0.beta5 started.

27/08/2012 10:42:30 AM org.apache.coyote.http11.Http11NioProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
27/08/2012 10:42:30 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 11568 ms

チャットクライアントが接続するとき

27/08/2012 10:47:57 AM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector

情報:サーブレットの書き込み/読み取りに共有セレクターを使用しています

メッセージが送信されたとき

10:48:09.256 [http-8080-exec-2] DEBUG o.a.cpr.AsynchronousProcessor - Cancelling the connection for request AtmosphereRequest{ contextPath=/atmosphere-rest-chat servletPath=/chat pathInfo=null requestURI=/atmosphere-rest-chat/chat requestURL=http://mogwai:8080/atmosphere-rest-chat/chat destroyable=true}
4

1 に答える 1

1

context.xmlの場合:

<?xml version = "1.0" encoding = "UTF-8"?>
<コンテキスト>
    <ローダーdelegate="true" />
</コンテキスト>

server.xmlの場合:

<Connector connectionTimeout="20000" port="8080" 
           protocol="org.apache.coyote.http11.Http11NioProtocol" 
           redirectPort="8443"/>

クラスパスで定義されているCometProcessorの実装が1つだけであることを確認してください。バンドルされている場合は、Webpassからcatalina.jarを削除することをお勧めします。詳細については、次のスレッドを参照してください。

http://mail-archives.apache.org/mod_mbox/tomcat-users/200707.mbox/%3C11785700.post@talk.nabble.com%3E

于 2012-08-26T12:25:28.967 に答える