webappでhttp/2を使用しようとしていました。 問題は、http/2を使用しているときにwebsocket接続が機能していないようです。Tomcat 9 http/2ウェブソケット
私は var webSocket = new WebSocket('wss://xxx.de:8443/urlto/websocket');
ではJavaScriptファイルを使用してserver.xmlの私のTomcat Connectorは、次のようになります
:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" >
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
<SSLHostConfig>
<Certificate certificateKeyFile="/path/to/privkey.pem"
certificateFile="/path/to/cert.pem"
certificateChainFile="/path/to/chain.pem"
type="RSA" />
</SSLHostConfig>
</Connector>
このようなサーバを起動すると、私はconnection closed before receiving a handshake response
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
の部分が含まれていない場合、websocketは問題なく接続します。