Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

pi/agent/skills/optional/java/java-http3-client/SKILL.md

Raw
Rendered preview

name: java-http3-client description: "Use when Java 26+ java.net.http.HttpClient should prefer or require HTTP/3." license: CC-BY-4.0-summary compatibility: "JDK 26+" metadata: sources: - "https://openjdk.org/jeps/517"

HTTP/3 for HttpClient

Use for HTTP/3 for HttpClient work from JEP 517 when targeting JDK 26+.

When active

  • Select HttpClient.Version.HTTP_3 on the client or request.
  • Check HttpResponse.version() because fallback can occur.
  • Use strict discovery only when server HTTP/3 support is required.

Pitfalls

  • HTTP/3 is opt-in; HTTP/2 remains default.
  • The legacy java.net.URL HTTP handler is not HTTP/3.
  • JEP 517 is client API support, not a public QUIC API or server.

Examples

Read examples/jep-517.md for JEP-derived snippets.

References

---
name: java-http3-client
description: "Use when Java 26+ `java.net.http.HttpClient` should prefer or require HTTP/3."
license: CC-BY-4.0-summary
compatibility: "JDK 26+"
metadata:
  sources:
    - "https://openjdk.org/jeps/517"
---

# HTTP/3 for HttpClient

Use for **HTTP/3 for HttpClient** work from [JEP 517](https://openjdk.org/jeps/517) when targeting JDK 26+.

## When active

- Select `HttpClient.Version.HTTP_3` on the client or request.
- Check `HttpResponse.version()` because fallback can occur.
- Use strict discovery only when server HTTP/3 support is required.

## Pitfalls

- HTTP/3 is opt-in; HTTP/2 remains default.
- The legacy `java.net.URL` HTTP handler is not HTTP/3.
- [JEP 517](https://openjdk.org/jeps/517) is client API support, not a public QUIC API or server.

## Examples

Read `examples/jep-517.md` for JEP-derived snippets.

## References

- https://openjdk.org/jeps/517