Foojay.io
Read post

HTTP QUERY Method Explained: RFC 10008, Ecosystem Adoption, and a Quarkus Implementation

RFC 10008 standardizes the HTTP QUERY method, filling a long-standing gap between GET (safe, idempotent, cacheable but URI-length-limited) and POST (body-carrying but neither safe nor idempotent). QUERY carries a request body like POST but is defined as safe and idempotent like GET, with explicit cacheability keyed on both URI and body content. The RFC also introduces the Accept-Query header for capability discovery and the Location header for equivalent-resource linking. Ecosystem adoption is uneven: Apache Tomcat 12 merged support in July 2026, Jetty has an open PR targeting version 13, and Jakarta Servlet has an open issue. Spring MVC/WebFlux lacks a RequestMethod.QUERY and a fix is targeted for Spring Framework 7.1 in November 2026. Quarkus can implement QUERY today without framework changes by using Jakarta REST's @HttpMethod meta-annotation on top of its Netty/Vert.x HTTP layer, which treats the method as an arbitrary token. A demo project shows two media-type variants, proper 415/422 error codes, Accept-Query and Location response headers, ETag-based conditional requests, and OPTIONS-based discovery.

    #java#architecture#quarkus
Jul 31•12m read time•From foojay.io
Post cover image
Table of contents
The QUERY MethodA decade in the makingWhere ecosystem support stands todayWhat about Spring?Why Quarkus can do it todayThe example: a product catalog you can QUERYConclusionReferences
3 Impressions
Foojay.io's image
Foojay.io

Foojay.io's platform is a central hub for Java developers, offering insights into Java programming l...

456 Followers

•

3.5K Upvotes

Would you recommend this post?

Copy link
WhatsApp
Facebook
X
New Squad
  • © 2026 Daily Dev Ltd.
  • Guidelines
  • Explore
  • Tags
  • Sources
  • Squads
  • Leaderboard