quarkus: @RouteFilter stopped working with WebSocket requests Quarkus 3.2.0.Final

Describe the bug

We were migrating from 2.16.7 to 3.2.0.Final

And we have WebSocket interceptor implemented with @RouteFilter

It looks like this:

@RouteFilter
 void authFilter(RoutingContext rc) {
    /// logic to search for websocket header etc
}

We use it to intercept GQL Subscriptions and its initial websocket request. After migration to 3.2.0.Final it stopped intercepting WebSocket for some reason.

Expected behavior

Intercept all requests as it was in 2.16.7

Actual behavior

Not intercepting websocket initial request

How to Reproduce?

No response

Output of uname -a or ver

No response

Output of java -version

17

GraalVM version (if different from Java)

No response

Quarkus version or git rev

3.2.0.Final

Build tool (ie. output of mvnw --version or gradlew --version)

gradle 8.1.1

Additional information

No response

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 19 (13 by maintainers)

Commits related to this issue

Most upvoted comments

@mkouba @phillip-kruger Thanks a lot for the help

@AlekseyMay So once the https://github.com/quarkusio/quarkus/pull/35188 is merged you can use @RouteFilter(10_001) (or any value > 10000).

Nice ! Thanks @mkouba . Yes for sure. I recall some internal ranges somewhere… It’s probably on Integer.MAX_VALUE at the moment, we should defiantly change that. @mkouba do you want to do the fix ? Else @jmartisk can add it to our todo list 😃

I can send a PR shortly. I’m not aware of any “internal ranges” but using a fixed value such as -1000 should be enough.

This doesn’t look dependent on GraphQL, nor am I aware of any changes in this area. Perhaps a reproducer project would help?