[undertow-dev] nghttp2 requests to Undertow - "[ERROR] HTTP/2 protocol was not selected. (nghttp2 expects h2)"

Michael Hixson michael.hixson at gmail.com
Wed Jun 3 00:17:40 EDT 2015


I am attempting to make requests to an Undertow+HTTP/2 server with nghttp2.

https://github.com/tatsuhiro-t/nghttp2

The requests fail.  I see the same error on the public demo site for
Undertow+HTTP/2, and I don't see any errors when I hit other
HTTP/2-enabled public sites, such as google.com.

The error is "[ERROR] HTTP/2 protocol was not selected. (nghttp2
expects h2)".  See the end of this email for full output from the
command line for requests to google.com and http2.undertow.io.

I'm wondering if this is a bug in Undertow.  Or perhaps it is a bug in
nghttp2 and I'm on the wrong mailing list.  Have any of you tried
this?  Any thoughts?

I'm using nghttp2 version 1.1.  The Undertow version is whatever the
public demo site is running right now, but I also tried it locally
with the latest from master (1.3.0.Beta1-SNAPSHOT) and got the same
result.

-Michael


----------------------------------------------


$ nghttp -ns https://www.google.com/
***** Statistics *****

Request timing:
  responseEnd: the  time  when  last  byte of  response  was  received
               relative to connectEnd
 requestStart: the time  just before  first byte  of request  was sent
               relative  to connectEnd.   If  '*' is  shown, this  was
               pushed by server.
      process: responseEnd - requestStart
         code: HTTP status code
         size: number  of  bytes  received as  response  body  without
               inflation.
          URI: request URI

see http://www.w3.org/TR/resource-timing/#processing-model

sorted by 'complete'

id  responseEnd requestStart  process code size request path
 13    +83.40ms       +161us  83.24ms  200  19K /


----------------------------------------------


$ nghttp -ns https://http2.undertow.io/
[ERROR] HTTP/2 protocol was not selected. (nghttp2 expects h2)
Some requests were not processed. total=1, processed=0
***** Statistics *****

Request timing:
  responseEnd: the  time  when  last  byte of  response  was  received
               relative to connectEnd
 requestStart: the time  just before  first byte  of request  was sent
               relative  to connectEnd.   If  '*' is  shown, this  was
               pushed by server.
      process: responseEnd - requestStart
         code: HTTP status code
         size: number  of  bytes  received as  response  body  without
               inflation.
          URI: request URI

see http://www.w3.org/TR/resource-timing/#processing-model

sorted by 'complete'

id  responseEnd requestStart  process code size request path


More information about the undertow-dev mailing list